| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594659565966597659865996600660166026603660466056606660766086609661066116612661366146615661666176618661966206621662266236624662566266627662866296630663166326633663466356636663766386639664066416642664366446645664666476648664966506651665266536654665566566657665866596660666166626663666466656666666766686669667066716672667366746675667666776678667966806681668266836684668566866687668866896690669166926693669466956696669766986699670067016702670367046705670667076708670967106711671267136714671567166717671867196720672167226723672467256726672767286729673067316732673367346735673667376738673967406741674267436744674567466747674867496750675167526753675467556756675767586759676067616762676367646765676667676768676967706771677267736774677567766777677867796780678167826783678467856786678767886789679067916792679367946795679667976798679968006801680268036804680568066807680868096810681168126813681468156816681768186819682068216822682368246825682668276828682968306831683268336834683568366837683868396840684168426843684468456846684768486849685068516852685368546855685668576858685968606861686268636864686568666867686868696870687168726873687468756876687768786879688068816882688368846885688668876888688968906891689268936894689568966897689868996900690169026903690469056906690769086909691069116912691369146915691669176918691969206921692269236924692569266927692869296930693169326933693469356936693769386939694069416942694369446945694669476948694969506951695269536954695569566957695869596960696169626963696469656966696769686969697069716972697369746975697669776978697969806981698269836984698569866987698869896990699169926993699469956996699769986999700070017002700370047005700670077008700970107011701270137014701570167017701870197020702170227023702470257026702770287029703070317032703370347035703670377038703970407041704270437044704570467047704870497050705170527053705470557056705770587059706070617062706370647065706670677068706970707071707270737074707570767077707870797080708170827083708470857086708770887089709070917092709370947095709670977098709971007101710271037104710571067107710871097110711171127113711471157116711771187119712071217122712371247125712671277128712971307131713271337134713571367137713871397140714171427143714471457146714771487149715071517152715371547155715671577158715971607161716271637164716571667167716871697170717171727173717471757176717771787179718071817182718371847185718671877188718971907191719271937194719571967197719871997200720172027203720472057206720772087209721072117212721372147215721672177218721972207221722272237224722572267227722872297230723172327233723472357236723772387239724072417242724372447245724672477248724972507251725272537254725572567257725872597260726172627263726472657266726772687269727072717272727372747275727672777278727972807281728272837284728572867287728872897290729172927293729472957296729772987299730073017302730373047305730673077308730973107311731273137314731573167317731873197320732173227323732473257326732773287329733073317332733373347335733673377338733973407341734273437344734573467347734873497350735173527353735473557356735773587359736073617362736373647365736673677368736973707371737273737374737573767377737873797380738173827383738473857386738773887389739073917392739373947395739673977398739974007401740274037404740574067407740874097410741174127413741474157416741774187419742074217422742374247425742674277428742974307431743274337434743574367437743874397440744174427443744474457446744774487449745074517452745374547455745674577458745974607461746274637464746574667467746874697470747174727473747474757476747774787479748074817482748374847485748674877488748974907491749274937494749574967497749874997500 |
- <?xml version="1.0" encoding="ISO8859-1"?>
- <fpdoc-descriptions>
- <!--
- $Id$
- This file is part of the FPC documentation. -->
- Copyright (C) 1999, by Michael Van Canneyt
-
- The FPC documentation is free text; you can redistribute it and/or
- modify it under the terms of the GNU Library General Public License as
- published by the Free Software Foundation; either version 2 of the
- License, or (at your option) any later version.
-
- The FPC Documentation is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Library General Public License for more details.
-
- You should have received a copy of the GNU Library General Public
- License along with the FPC documentation; see the file COPYING.LIB. If not,
- write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- Boston, MA 02111-1307, USA.
- -->
- <package name="rtl">
- <module name="sysutils">
- <short>Various system utilities.</short>
- <!-- \FPCexampledir{sysutex} -->
- <descr>
- This documentation describes the <file>sysutils</file> unit. The <file>sysutils</file> unit
- was started by Gertjan Schouten, and completed by Michael Van Canneyt.
- It aims to be compatible to the Delphi <file>sysutils</file> unit, but in contrast
- with the latter, it is designed to work on multiple platforms. It is implemented
- on all supported platforms.
- </descr>
- <topic name="StringFunctions">
- <short>String functions</short>
- <descr>
- <p>
- Functions for handling strings.
- </p>
- <table>
- <th><td>Name</td><td>Description</td></th>
- <tr><td><link id="AnsiCompareStr"/></td><td>Compare two strings</td></tr>
- <tr><td><link id="AnsiCompareText"/></td><td>Compare two strings, case insensitive</td></tr>
- <tr><td><link id="AnsiExtractQuotedStr"/></td><td>Removes quotes from string</td></tr>
- <tr><td><link id="AnsiLastChar"/></td><td>Get last character of string</td></tr>
- <tr><td><link id="AnsiLowerCase"/></td><td>Convert string to all-lowercase</td></tr>
- <tr><td><link id="AnsiQuotedStr"/></td><td>Qoutes a string</td></tr>
- <tr><td><link id="AnsiStrComp"/></td><td>Compare strings case-sensitive</td></tr>
- <tr><td><link id="AnsiStrIComp"/></td><td>Compare strings case-insensitive</td></tr>
- <tr><td><link id="AnsiStrLComp"/></td><td>Compare L characters of strings case sensitive</td></tr>
- <tr><td><link id="AnsiStrLIComp"/></td><td>Compare L characters of strings case insensitive</td></tr>
- <tr><td><link id="AnsiStrLastChar"/></td><td>Get last character of string</td></tr>
- <tr><td><link id="AnsiStrLower"/></td><td>Convert string to all-lowercase</td></tr>
- <tr><td><link id="AnsiStrUpper"/></td><td>Convert string to all-uppercase</td></tr>
- <tr><td><link id="AnsiUpperCase"/></td><td>Convert string to all-uppercase</td></tr>
- <tr><td><link id="AppendStr"/></td><td>Append 2 strings</td></tr>
- <tr><td><link id="AssignStr"/></td><td>Assign value of strings on heap</td></tr>
- <tr><td><link id="CompareStr"/></td><td>Compare two strings case sensitive</td></tr>
- <tr><td><link id="CompareText"/></td><td>Compare two strings case insensitive</td></tr>
- <tr><td><link id="DisposeStr"/></td><td>Remove string from heap</td></tr>
- <tr><td><link id="IsValidIdent"/></td><td>Is string a valid pascal identifier</td></tr>
- <tr><td><link id="LastDelimiter"/></td><td>Last occurance of character in a string</td></tr>
- <tr><td><link id="LeftStr"/></td><td>Get first N characters of a string</td></tr>
- <tr><td><link id="LoadStr"/></td><td>Load string from resources</td></tr>
- <tr><td><link id="LowerCase"/></td><td>Convert string to all-lowercase</td></tr>
- <tr><td><link id="NewStr"/></td><td>Allocate new string on heap</td></tr>
- <tr><td><link id="RightStr"/></td><td>Get last N characters of a string</td></tr>
- <tr><td><link id="StrAlloc"/></td><td>Allocate memory for string</td></tr>
- <tr><td><link id="StrBufSize"/></td><td>Reserve memory for a string</td></tr>
- <tr><td><link id="StrDispose"/></td><td>Remove string from heap</td></tr>
- <tr><td><link id="StrPas"/></td><td>Convert PChar to pascal string</td></tr>
- <tr><td><link id="StrPCopy"/></td><td>Copy pascal string</td></tr>
- <tr><td><link id="StrPLCopy"/></td><td>Copy N bytes of pascal string</td></tr>
- <tr><td><link id="UpperCase"/></td><td>Convert string to all-uppercase</td></tr>
- </table>
- </descr>
- </topic>
- <topic name="FormatStrings">
- <short>Formatting strings</short>
- <descr>
- <p>
- Functions for formatting strings.
- </p>
- <table>
- <th><td>Name</td><td>Description</td></th>
- <tr><td><link id="AdjustLineBreaks"/></td><td>Convert line breaks to line breaks for system</td></tr>
- <tr><td><link id="FormatBuf"/></td><td>Format a buffer</td></tr>
- <tr><td><link id="Format"/></td><td>Format arguments in string</td></tr>
- <tr><td><link id="FmtStr"/></td><td>Format buffer</td></tr>
- <tr><td><link id="QuotedStr"/></td><td>Quote a string</td></tr>
- <tr><td><link id="StrFmt"/></td><td>Format arguments in a string</td></tr>
- <tr><td><link id="StrLFmt"/></td><td>Format maximum L characters in a string</td></tr>
- <tr><td><link id="TrimLeft"/></td><td>Remove whitespace at the left of a string</td></tr>
- <tr><td><link id="TrimRight"/></td><td>Remove whitespace at the right of a string</td></tr>
- <tr><td><link id="Trim"/></td><td>Remove whitespace at both ends of a string</td></tr>
- </table>
- </descr>
- </topic>
- <topic name="FormatChars">
- <short>Date and time formatting characters</short>
- <descr>
- <p>
- Various date and time formatting routines accept a format string.
- to format the date and or time. The following characters can be used
- to control the date and time formatting:
- </p>
- <dl>
- <dt>c</dt><dd>shortdateformat + ' ' + shorttimeformat</dd>
- <dt>d</dt><dd>day of month</dd>
- <dt>dd</dt><dd>day of month (leading zero)</dd>
- <dt>ddd</dt><dd>day of week (abbreviation)</dd>
- <dt>dddd</dt><dd>day of week (full)</dd>
- <dt>ddddd</dt><dd>shortdateformat</dd>
- <dt>dddddd</dt><dd>longdateformat</dd>
- <dt>m</dt><dd>month</dd>
- <dt>mm</dt><dd>month (leading zero)</dd>
- <dt>mmm</dt><dd>month (abbreviation)</dd>
- <dt>mmmm</dt><dd>month (full)</dd>
- <dt>y</dt><dd>year (four digits)</dd>
- <dt>yy</dt><dd>year (two digits)</dd>
- <dt>yyyy</dt><dd>year (with century)</dd>
- <dt>h</dt><dd>hour</dd>
- <dt>hh</dt><dd>hour (leading zero)</dd>
- <dt>n</dt><dd>minute</dd>
- <dt>nn</dt><dd>minute (leading zero)</dd>
- <dt>s</dt><dd>second</dd>
- <dt>ss</dt><dd>second (leading zero)</dd>
- <dt>t</dt><dd>shorttimeformat</dd>
- <dt>tt</dt><dd>longtimeformat</dd>
- <dt>am/pm</dt><dd>use 12 hour clock and display am and pm accordingly</dd>
- <dt>a/p</dt><dd>use 12 hour clock and display a and p accordingly</dd>
- <dt>/</dt><dd>insert date seperator</dd>
- <dt>:</dt><dd>insert time seperator</dd>
- <dt>"xx"</dt><dd>literal text</dd>
- <dt>'xx'</dt><dd>literal text</dd>
- </dl>
- </descr>
- </topic>
- <topic name="PCharFunctions">
- <short>PChar related functions</short>
- <descr>
- <p>
- Most PChar functions are the same as their counterparts in the <file>STRINGS</file>
- unit. The following functions are the same :
- </p>
- <ol>
- <li><link id="StrCat"/> : Concatenates two <var>PChar</var> strings.</li>
- <li><link id="StrComp"/> : Compares two <var>PChar</var> strings.</li>
- <li><link id="StrCopy"/> : Copies a <var>PChar</var> string.</li>
- <li><link id="StrECopy"/> : Copies a <var>PChar</var> string and returns a pointer to
- the terminating null byte.</li>
- <li><link id="StrEnd"/> : Returns a pointer to the terminating null byte.</li>
- <li><link id="StrIComp"/> : Case insensitive compare of 2 <var>PChar</var> strings.</li>
- <li><link id="StrLCat"/> : Appends at most L characters from one <var>PChar</var> to
- another <var>PChar</var>.
- </li>
- <li><link id="StrLComp"/> : Case sensitive compare of at most L characters of 2 <var>PChar</var> strings.
- </li>
- <li><link id="StrLCopy"/> : Copies at most L characters from one <var>PChar</var> to another.
- </li>
- <li><link id="StrLen"/> : Returns the length (exclusive terminating null byte)
- of a <var>PChar</var> string.</li>
- <li> <link id="StrLIComp"/> : Case insensitive compare of at most L characters of 2
- <var>PChar</var> strings.
- </li>
- <li> <link id="StrLower"/> : Converts a <var>PChar</var> to all lowercase letters.
- </li>
- <li> <link id="StrMove"/> : Moves one <var>PChar</var> to another.
- </li>
- <li> <link id="StrNew"/> : Makes a copy of a <var>PChar</var> on the heap, and returns
- a pointer to this copy.
- </li>
- <li> <link id="StrPos"/> : Returns the position of one <var>PChar</var> string in
- another?
- </li>
- <li> <link id="StrRScan"/> : returns a pointer to the last occurrence of on
- <var>PChar</var> string in another one.
- </li>
- <li> <link id="StrScan"/> : returns a pointer to the first occurrence of on
- <var>PChar</var> string in another one.
- </li>
- <li> <link id="StrUpper"/> : Converts a <var>PChar</var> to all uppercase
- letters.</li>
- </ol>
- <p>
- The subsequent functions are different from their counterparts in
- <file>STRINGS</file>, although the same examples can be used.
- </p>
- </descr>
- </topic>
- <topic name="IORoutines">
- <short>File input/output routines</short>
- <descr>
- <p>
- Functions for reading/writing to file.
- </p>
- <table>
- <th><td>Name</td><td>Description</td></th>
- <tr><td><link id="FileCreate"/></td><td>Create a file and return handle</td></tr>
- <tr><td><link id="FileOpen"/></td><td>Open file end return handle</td></tr>
- <tr><td><link id="FileRead"/></td><td>Read from file</td></tr>
- <tr><td><link id="FileSeek"/></td><td>Set file position</td></tr>
- <tr><td><link id="FileTruncate"/></td><td>Truncate file length</td></tr>
- <tr><td><link id="FileWrite"/></td><td>Write to file</td></tr>
- <tr><td><link id="FileClose"/></td><td>Close file handle</td></tr>
- </table>
- </descr>
- </topic>
- <topic name="FileNameRoutines">
- <short>FileName handling routines</short>
- <descr>
- <p>
- Functions for file manipulation.
- </p>
- <table>
- <th><td>Name</td><td>Description</td></th>
- <tr><td><link id="AddDisk"/></td><td>Add sisk to list of disk drives</td></tr>
- <tr><td><link id="ChangeFileExt"/></td><td>Change extension of file name</td></tr>
- <tr><td><link id="CreateDir"/></td><td>Create a directory</td></tr>
- <tr><td><link id="DeleteFile"/></td><td>Delete a file</td></tr>
- <tr><td><link id="DiskFree"/></td><td>Free space on disk</td></tr>
- <tr><td><link id="DiskSize"/></td><td>Total size of disk</td></tr>
- <tr><td><link id="ExpandFileName"/></td><td>Create full file name</td></tr>
- <tr><td><link id="ExpandUNCFileName"/></td><td>Create full UNC file name</td></tr>
- <tr><td><link id="ExtractFileDir"/></td><td>Extract directory part of filename</td></tr>
- <tr><td><link id="ExtractFileDrive"/></td><td>Extract drive part of filename</td></tr>
- <tr><td><link id="ExtractFileExt"/></td><td>Extract extension part of filename</td></tr>
- <tr><td><link id="ExtractFileName"/></td><td>Extract name part of filename</td></tr>
- <tr><td><link id="ExtractFilePath"/></td><td>Extrct path part of filename</td></tr>
- <tr><td><link id="ExtractRelativePath"/></td><td>Construct relative path between two files</td></tr>
- <tr><td><link id="FileAge"/></td><td>Return file age</td></tr>
- <tr><td><link id="FileDateToDateTime"/></td><td>Convert file date to system date</td></tr>
- <tr><td><link id="FileExists"/></td><td>Determine whether a file exists on disk</td></tr>
- <tr><td><link id="FileGetAttr"/></td><td>Get attributes of file</td></tr>
- <tr><td><link id="FileGetDate"/></td><td>Get date of last file modification</td></tr>
- <tr><td><link id="FileSearch"/></td><td>Search for file in path</td></tr>
- <tr><td><link id="FileSetAttr"/></td><td>Get file attributes</td></tr>
- <tr><td><link id="FileSetDate"/></td><td>Get file dates</td></tr>
- <tr><td><link id="FindFirst"/></td><td>Start finding a file</td></tr>
- <tr><td><link id="FindNext"/></td><td>Find next file</td></tr>
- <tr><td><link id="GetCurrentDir"/></td><td>Return current working directory</td></tr>
- <tr><td><link id="RemoveDir"/></td><td>Remove a directory from disk</td></tr>
- <tr><td><link id="RenameFile"/></td><td>Rename a file on disk</td></tr>
- <tr><td><link id="SetCurrentDir"/></td><td>Set current working directory</td></tr>
- <tr><td><link id="SetDirSeparators"/></td><td>Set directory separator characters</td></tr>
- <tr><td><link id="FindClose"/></td><td>Stop searching a file</td></tr>
- <tr><td><link id="DoDirSeparators"/></td><td>Replace directory separator characters</td></tr>
- </table>
- </descr>
- </topic>
- <topic name="DateTimeRoutines">
- <short>Date/time routines</short>
- <descr>
- <p>
- Functions for date and time handling.
- </p>
- <table>
- <th><td>Name</td><td>Description</td></th>
- <tr><td><link id="DateTimeToFileDate"/></td><td>Convert DateTime type to file date</td></tr>
- <tr><td><link id="DateTimeToStr"/></td><td>Construct string representation of DateTime</td></tr>
- <tr><td><link id="DateTimeToString"/></td><td>Construct string representation of DateTime</td></tr>
- <tr><td><link id="DateTimeToSystemTime"/></td><td>Convert DateTime to system time</td></tr>
- <tr><td><link id="DateTimeToTimeStamp"/></td><td>Convert DateTime to timestamp</td></tr>
- <tr><td><link id="DateToStr"/></td><td>Construct string representation of date</td></tr>
- <tr><td><link id="Date"/></td><td>Get current date</td></tr>
- <tr><td><link id="DayOfWeek"/></td><td>Get day of week</td></tr>
- <tr><td><link id="DecodeDate"/></td><td>Decode DateTime to year month and day</td></tr>
- <tr><td><link id="DecodeTime"/></td><td>Decode DateTime to hours, minutes and seconds</td></tr>
- <tr><td><link id="EncodeDate"/></td><td>Encode year, day and month to DateTime</td></tr>
- <tr><td><link id="EncodeTime"/></td><td>Encode hours, minutes and seconds to DateTime</td></tr>
- <tr><td><link id="FormatDateTime"/></td><td>Return string representation of DateTime</td></tr>
- <tr><td><link id="IncMonth"/></td><td>Add 1 to month</td></tr>
- <tr><td><link id="IsLeapYear"/></td><td>Determine if year is leap year</td></tr>
- <tr><td><link id="MSecsToTimeStamp"/></td><td>Convert nr of milliseconds to timestamp</td></tr>
- <tr><td><link id="Now"/></td><td>Get current date and time</td></tr>
- <tr><td><link id="StrToDateTime"/></td><td>Convert string to DateTime</td></tr>
- <tr><td><link id="StrToDate"/></td><td>Convert string to date</td></tr>
- <tr><td><link id="StrToTime"/></td><td>Convert string to time</td></tr>
- <tr><td><link id="SystemTimeToDateTime"/></td><td>Convert system time to datetime</td></tr>
- <tr><td><link id="TimeStampToDateTime"/></td><td>Convert time stamp to DateTime</td></tr>
- <tr><td><link id="TimeStampToMSecs"/></td><td>Convert Timestamp to number of millicseconds</td></tr>
- <tr><td><link id="TimeToStr"/></td><td>return string representation of Time</td></tr>
- <tr><td><link id="Time"/></td><td>Get current tyme</td></tr>
- </table>
- </descr>
- </topic>
- <topic name="ConversionRoutines">
- <short>Miscellaneous conversion routines</short>
- <descr>
- <p>
- Functions for various conversions.
- </p>
- <table>
- <th><td>Name</td><td>Description</td></th>
- <tr><td><link id="BCDToInt"/></td><td>Convert BCD number to integer</td></tr>
- <tr><td><link id="CompareMem"/></td><td>Compare two memory regions</td></tr>
- <tr><td><link id="FloatToStrF"/></td><td>Convert float to formatted string</td></tr>
- <tr><td><link id="FloatToStr"/></td><td>Convert float to string</td></tr>
- <tr><td><link id="FloatToText"/></td><td>Convert float to string</td></tr>
- <tr><td><link id="FormatFloat"/></td><td>Format a floating point value</td></tr>
- <tr><td><link id="GetDirs"/></td><td>Split string in list of directories</td></tr>
- <tr><td><link id="IntToHex"/></td><td>return hexadecimal representation of integer</td></tr>
- <tr><td><link id="IntToStr"/></td><td>return decumal representation of integer</td></tr>
- <tr><td><link id="StrToIntDef"/></td><td>Convert string to integer with default value</td></tr>
- <tr><td><link id="StrToInt"/></td><td>Convert string to integer</td></tr>
- <tr><td><link id="StrToFloat"/></td><td>Convert string to float</td></tr>
- <tr><td><link id="TextToFloat"/></td><td>Convert null-terminated string to float</td></tr>
- </table>
- </descr>
- </topic>
- <element name="TDateTime">
- <short>Type describing date/time</short>
- <descr>
- <p>
- Many functions return or require a <var>TDateTime</var> type, which contains
- a date and time in encoded form. The date and time are converted to a double
- as follows:
- </p>
- <ul>
- <li> The date part is stored in the integer part of the double as the
- number of days passed since January 1, 1900.
- </li>
- <li> The time part is stored in the fractional part of the double, as
- the number of milliseconds passed since midnight (00:00), divided by the
- total number of milliseconds in a day.
- </li>
- </ul>
- </descr>
- </element>
- <element name="Date">
- <short>Return the current date.</short>
- <descr>
- <var>Date</var> returns the current date in <var>TDateTime</var> format.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="Time"/>
- <link id="Now"/>
- </seealso>
- <example file="sysutex/ex1"/>
- </element>
- <element name="DateTimeToFileDate">
- <short>Convert a <var>TDateTime</var> value to a file age (integer)</short>
- <descr>
- <var>DateTimeToFileDate</var> function converts a date/time indication in
- <var>TDateTime</var> format to a filedate function, such as returned for
- instance by the <link id="FileAge"/> function.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="Time"/>
- <link id="Date"/>
- <link id="FileDateToDateTime"/>,
- <link id="DateTimeToSystemTime"/>
- <link id="DateTimeToTimeStamp"/>
- </seealso>
- <example file="sysutex/ex2"/>
- </element>
- <element name="DateTimeToStr">
- <short>Converts a <var>TDateTime</var> value to a string using a predefined format.</short>
- <descr>
- <var>DateTimeToStr</var> returns a string representation of
- <var>DateTime</var> using the formatting specified in
- <var>ShortDateTimeFormat</var>. It corresponds to a call to
- <var>FormatDateTime('c',DateTime)</var> (see <link id="formatchars"/>).
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="FormatDateTime"/>
- </seealso>
- <example file="sysutex/ex3"/>
- </element>
- <element name="DateTimeToString">
- <short>Converts a <var>TDateTime</var> value to a string with a given format.</short>
- <descr>
- <var>DateTimeToString</var> returns in <var>Result</var> a string representation of
- <var>DateTime</var> using the formatting specified in <var>FormatStr</var>.
- for a list of characters that can be used in the <var>FormatStr</var> formatting
- string, see <link id="formatchars"/>.
- </descr>
- <errors>
- In case a wrong formatting character is found, an <var>EConvertError</var> is
- raised.
- </errors>
- <seealso>
- <link id="FormatDateTime"/>
- <link id="formatchars"/>.
- </seealso>
- <example file="sysutex/ex4"/>
- </element>
- <element name="DateTimeToSystemTime">
- <short>Converts a <var>TDateTime</var> value to a systemtime structure.</short>
- <descr>
- <var>DateTimeToSystemTime</var> converts a date/time pair in <var>DateTime</var>, with
- <var>TDateTime</var> format to a system time <var>SystemTime</var>.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="DateTimeToFileDate"/>
- <link id="SystemTimeToDateTime"/>,
- <link id="DateTimeToTimeStamp"/>
- </seealso>
- <example file="sysutex/ex5"/>
- </element>
- <element name="DateTimeToTimeStamp">
- <short>Converts a <var>TDateTime</var> value to a TimeStamp structure.</short>
- <descr>
- <var>DateTimeToSystemTime</var> converts a date/time pair in <var>DateTime</var>, with
- <var>TDateTime</var> format to a <var>TTimeStamp</var> format.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="DateTimeToFileDate"/>
- <link id="SystemTimeToDateTime"/>,
- <link id="DateTimeToSystemTime"/>
- </seealso>
- <example file="sysutex/ex6"/>
- </element>
- <element name="DateToStr">
- <short>Converts a <var>TDateTime</var> value to a date string with a predefined format.</short>
- <descr>
- <var>DateToStr</var> converts <var>Date</var> to a string representation. It uses
- <var>ShortDateFormat</var> as it's formatting string. It is hence completely
- equivalent to a <var>FormatDateTime('ddddd', Date)</var>.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="TimeToStr"/>
- <link id="DateTimeToStr"/>
- <link id="FormatDateTime"/>,
- <link id="StrToDate"/>
- </seealso>
- <example file="sysutex/ex7"/>
- </element>
- <element name="DayOfWeek">
- <short>Returns the day of the week.</short>
- <descr>
- <var>DayOfWeek</var> returns the day of the week from <var>DateTime</var>.
- <var>Sunday</var> is counted as day 1, <var>Saturday</var> is counted as
- day 7. The result of <var>DayOfWeek</var> can serve as an index to
- the <var>LongDayNames</var> constant array, to retrieve the name of
- the day.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="Date"/>
- <link id="DateToStr"/>
- </seealso>
- <example file="sysutex/ex8"/>
- </element>
- <element name="DecodeDate">
- <short>Decode a <var>TDateTime</var> to a year,month,day triplet</short>
- <descr>
- <var>DecodeDate</var> decodes the Year, Month and Day stored in <var>Date</var>,
- and returns them in the <var>Year</var>, <var>Month</var> and <var>Day</var> variables.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="EncodeDate"/>
- <link id="DecodeTime"/>.
- </seealso>
- <example file="sysutex/ex9"/>
- </element>
- <element name="DecodeTime">
- <short>Decode a <var>TDateTime</var> to a hour,minute,second,millisec quartet</short>
- <descr>
- <var>DecodeDate</var> decodes the hours, minutes, second and milliseconds stored
- in <var>Time</var>, and returns them in the <var>Hour</var>, <var>Minute</var> and
- <var>Second</var> and <var>MilliSecond</var> variables.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="EncodeTime"/>
- <link id="DecodeDate"/>.
- </seealso>
- <example file="sysutex/ex10"/>
- </element>
- <element name="EncodeDate">
- <short>Encode a Year,Month,Day to a <var>TDateTime</var> value.</short>
- <descr>
- <p>
- <var>EncodeDate</var> encodes the <var>Year</var>, <var>Month</var> and <var>Day</var> variables to
- a date in <var>TDateTime</var> format. It does the opposite of the
- <link id="DecodeDate"/> procedure.
- </p>
- <p>
- The parameters must lie withing valid ranges (boundaries included):
- </p>
- <dl>
- <dt>Year</dt><dd> must be between 1 and 9999.</dd>
- <dt>Month</dt><dd> must be within the range 1-12.</dd>
- <dt>Day</dt><dd> msut be between 1 and 31.</dd>
- </dl>
- </descr>
- <errors>
- In case one of the parameters is out of it's valid range, 0 is returned.
- </errors>
- <seealso>
- <link id="EncodeTime"/>
- <link id="DecodeDate"/>
- </seealso>
- <example file="sysutex/ex11"/>
- </element>
- <element name="EncodeTime">
- <short>Encode a Hour,Min,Sec,millisec to a <var>TDateTime</var> value.</short>
- <descr>
- <p>
- <var>EncodeTime</var> encodes the <var>Hour</var>, <var>Minute</var>, <var>Second</var>,
- <var>MilliSecond</var> variables to a <var>TDateTime</var> format result.
- It does the opposite of the <link id="DecodeTime"/> procedure.
- </p>
- <p>
- The parameters must have a valid range (boundaries included):
- </p>
- <dl>
- <dt>Hour</dt><dd> must be between 0 and 23.</dd>
- <dt>Minute,second</dt><dd> must both be between 0 and 59.</dd>
- <dt>Millisecond</dt><dd> must be between 0 and 999.</dd>
- </dl>
- </descr>
- <errors>
- In case one of the parameters is outside of it's valid range, 0 is returned.
- </errors>
- <seealso>
- <link id="EncodeDate"/>
- <link id="DecodeTime"/>
- </seealso>
- <example file="sysutex/ex12"/>
- </element>
- <element name="FileDateToDateTime">
- <short>Convert a <var>FileDate</var> value to a <var>TDateTime</var>
- value.</short>
- <descr>
- <var>FileDateToDateTime</var> converts the date/time encoded in <var>filedate</var>
- to a <var>TDateTime</var> encoded form. It can be used to convert date/time values
- returned by the <link id="FileAge"/> or <link id="FindFirst"/>/<link id="FindNext"/>
- functions to <var>TDateTime</var> form.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="DateTimeToFileDate"/>
- </seealso>
- <example file="sysutex/ex13"/>
- </element>
- <element name="FormatDateTime">
- <short>Return a string representation of a <var>TDateTime</var> value with a given
- format.</short>
- <descr>
- <var>FormatDateTime</var> formats the date and time encoded in <var>DateTime</var>
- according to the formatting given in <var>FormatStr</var>. The complete list
- of formatting characters can be found in <link id="formatchars"/>.
- </descr>
- <errors>
- On error (such as an invalid character in the formatting string), and
- <var>EConvertError</var> exception is raised.
- </errors>
- <seealso>
- <link id="DateTimeToStr"/>
- <link id="DateToStr"/>
- <link id="TimeToStr"/>
- <link id="StrToDateTime"/>
- </seealso>
- <example file="sysutex/ex14"/>
- </element>
- <element name="IncMonth">
- <short>Increases the month in a <var>TDateTime</var> value with a given amount.</short>
- <descr>
- <var>IncMonth</var> increases the month number in <var>DateTime</var> with
- <var>NumberOfMonths</var>. It wraps the result as to get a month between 1 and
- 12, and updates the year accordingly. <var>NumberOfMonths</var> can be negative,
- and can be larger than 12 (in absolute value).
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="Date"/>
- <link id="Time"/>
- <link id="Now"/>
- </seealso>
- <example file="sysutex/ex15"/>
- </element>
- <element name="IsLeapYear">
- <short>Determine whether a year is a leap year.</short>
- <descr>
- <var>IsLeapYear</var> returns <var>True</var> if <var>Year</var> is a leap year,
- <var>False</var> otherwise.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="IncMonth"/>
- <link id="Date"/>
- </seealso>
- <example file="sysutex/ex16"/>
- </element>
- <element name="MSecsToTimeStamp">
- <short>Convert a number of milliseconds to a <var>TDateTime</var> value.</short>
- <descr>
- <p>
- <var>MSecsTiTimeStamp</var> converts the given number of milliseconds to
- a <var>TTimeStamp</var> date/time notation.
- </p>
- <p>
- Use <var>TTimeStamp</var> variables if you need to keep very precise track of
- time.
- </p>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="TimeStampToMSecs"/>
- <link id="DateTimeToTimeStamp"/>
- </seealso>
- <example file="sysutex/ex17"/>
- </element>
- <element name="Now">
- <short>Returns the current date and time.</short>
- <descr>
- <var>Now</var> returns the current date and time. It is equivalent to
- <var>Date+Time</var>.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="Date"/>
- <link id="Time"/>
- </seealso>
- <example file="sysutex/ex18"/>
- </element>
- <element name="StrToDate">
- <short>Convert a date string to a <var>TDateTime</var> value.</short>
- <descr>
- <p>
- <var>StrToDate</var> converts the string <var>S</var> to a <var>TDateTime</var> date
- value. The Date must consist of 1 to three digits, separated by the
- <var>DateSeparator</var> character. If two numbers are given, they
- are supposed to form the day and month of the current year. If only
- one number is given, it is supposed to represent the day of the
- current month. (This is <em>not</em> supported in Delphi)
- </p>
- <p>
- The order of the digits (y/m/d, m/d/y, d/m/y) is determined from the
- <var>ShortDateFormat</var> variable.
- </p>
- </descr>
- <errors>
- On error (e.g. an invalid date or invalid character),
- an <var>EConvertError</var> exception is raised.
- </errors>
- <seealso>
- <link id="StrToTime"/>
- <link id="DateToStr"/>
- <link id="TimeToStr"/>
- </seealso>
- <example file="sysutex/ex19"/>
- </element>
- <element name="StrToDateTime">
- <short>Convert a date/time string to a <var>TDateTime</var> value.</short>
- <descr>
- <p>
- <var>StrToDateTime</var> converts the string <var>S</var> to a <var>TDateTime</var> date
- and time value. The Date must consist of 1 to three digits, separated by the
- <var>DateSeparator</var> character. If two numbers are given, they
- are supposed to form the day and month of the current year. If only
- one number is given, it is supposed to represent the day of the
- current month. (This is <em>not</em> supported in Delphi)
- </p>
- <p>
- The order of the digits (y/m/d, m/d/y, d/m/y) is determined from the
- <var>ShortDateFormat</var> variable.
- </p>
- </descr>
- <errors>
- On error (e.g. an invalid date or invalid character),
- an <var>EConvertError</var> exception is raised.
- </errors>
- <seealso>
- <link id="StrToDate"/>
- <link id="StrToTime"/>
- <link id="DateTimeToStr"/>
- </seealso>
- <example file="sysutex/ex20"/>
- </element>
- <element name="StrToTime">
- <short>Convert a time string to a <var>TDateTime</var> value.</short>
- <descr>
- <var>StrToTime</var> converts the string <var>S</var> to a <var>TDateTime</var> time
- value. The time must consist of 1 to 4 digits, separated by the
- <var>TimeSeparator</var> character. If two numbers are given, they
- are supposed to form the hour and minutes.
- </descr>
- <errors>
- On error (e.g. an invalid date or invalid character),
- an <var>EConvertError</var> exception is raised.
- </errors>
- <seealso>
- <link id="StrToDate"/>
- <link id="StrToDateTime"/>
- <link id="TimeToStr"/>
- </seealso>
- <example file="sysutex/ex21"/>
- </element>
- <element name="SystemTimeToDateTime">
- <short>Convert a system time to a <var>TDateTime</var> value.</short>
- <descr>
- <var>SystemTimeToDateTime</var> converts a <var>TSystemTime</var> record to a
- <var>TDateTime</var> style date/time indication.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="DateTimeToSystemTime"/>
- </seealso>
- <example file="sysutex/ex22"/>
- </element>
- <element name="Time">
- <short>Returns the current time.</short>
- <descr>
- <var>Time</var> returns the current time in <var>TDateTime</var> format. The date
- part of the <var>TDateTimeValue</var> is set to zero.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="Now"/>
- <link id="Date"/>
- </seealso>
- <example file="sysutex/ex23"/>
- </element>
- <element name="TimeStampToDateTime">
- <short>Convert a TimeStamp value to a <var>TDateTime</var> value.</short>
- <descr>
- <var>TimeStampToDateTime</var> converts <var>TimeStamp</var> to a <var>TDateTime</var>
- format variable. It is the inverse operation of <link id="DateTimeToTimeStamp"/>.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="DateTimeToTimeStamp"/>
- <link id="TimeStampToMSecs"/>
- </seealso>
- <example file="sysutex/ex24"/>
- </element>
- <element name="TimeStampToMSecs">
- <short>Converts a timestamp to a number of milliseconds.</short>
- <descr>
- <p>
- <var>TimeStampToMSecs</var> converts <var>TimeStamp</var> to the number of seconds
- since <var>1/1/0001</var>.
- </p>
- <p>
- Use <var>TTimeStamp</var> variables if you need to keep very precise track of
- time.
- </p>
- <p>
- For an example, see <link id="MSecsToTimeStamp"/>.
- </p>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="MSecsToTimeStamp"/>
- <link id="TimeStampToDateTime"/>
- </seealso>
- </element>
- <element name="TimeToStr">
- <short>Convert a <var>TDateTime</var> time to a string using a predefined format.</short>
- <descr>
- <var>TimeToStr</var> converts the time in <var>Time</var> to a string. It uses
- the <var>ShortTimeFormat</var> variable to see what formatting needs to be
- applied. It is therefor entirely equivalent to a
- <var>FormatDateTime('t',Time)</var> call.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- </seealso>
- <example file="sysutex/ex25"/>
- </element>
- <element name="AddDisk">
- <short>Add a disk to the list of known disks (Unix only)</short>
- <descr>
- <p>
- On Linux both the <link id="DiskFree"/> and <link id="DiskSize"/> functions need a
- file on the specified drive, since is required for the statfs system call.
- </p>
- <p>
- These filenames are set in drivestr[0..26], and the first 4 have been
- preset to :
- </p>
- <dl>
- <dt>Disk 0</dt><dd><var>'.'</var> default drive - hence current directory is used.</dd>
- <dt>Disk 1</dt><dd><var>'/fd0/.'</var> floppy drive 1.</dd>
- <dt>Disk 2</dt><dd><var>'/fd1/.'</var> floppy drive 2.</dd>
- <dt>Disk 3</dt><dd><var>'/'</var> <file>C:</file> equivalent of DOS is the root partition.</dd>
- </dl>
- <p>
- Drives 4..26 can be set by your own applications with the <var>AddDisk</var> call.
- </p>
- <p>
- The <var>AddDisk</var> call adds <var>Path</var> to the names of drive files, and
- returns the number of the disk that corresponds to this drive. If you
- add more than 21 drives, the count is wrapped to 4.
- </p>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="DiskFree"/>
- <link id="DiskSize"/>
- </seealso>
- </element>
- <element name="CreateDir">
- <short>Create a new directory</short>
- <descr>
- <p>
- <var>CreateDir</var> creates a new directory with name <var>NewDir</var>.
- If the directory doesn't contain an absolute path, then the directory is
- created below the current working directory.
- </p>
- <p>
- The function returns <var>True</var> if the directory was successfully
- created, <var>False</var> otherwise.
- </p>
- </descr>
- <errors>
- In case of an error, the function returns <var>False</var>.
- </errors>
- <seealso>
- <link id="RemoveDir"/>
- </seealso>
- <example file="sysutex/ex26"/>
- </element>
- <element name="DiskFree">
- <short>Return the amount of free diskspace</short>
- <descr>
- <p>
- <var>DiskFree</var> returns the free space (in bytes) on disk <var>Drive</var>.
- Drive is the number of the disk drive:
- </p>
- <dl>
- <dt>0</dt><dd> for the current drive.</dd>
- <dt>1</dt><dd> for the first floppy drive.</dd>
- <dt>2</dt><dd> for the second floppy drive.</dd>
- <dt>3</dt><dd> for the first hard-disk partition.</dd>
- <dt>4-26</dt><dd> for all other drives and partitions.</dd>
- </dl>
- <remark>
- Under linux, and Unix in general, the concept of disk is
- different than the dos one, since the filesystem is seen as one big
- directory tree. For this reason, the <var>DiskFree</var> and <link id="DiskSize"/>
- functions must be mimicked using filenames that reside on the partitions.
- For more information, see <link id="AddDisk"/>.
- </remark>
- </descr>
- <errors>
- On error, <var>-1</var> is returned.
- </errors>
- <seealso>
- <link id="DiskSize">DiskSize</link>
- <link id="AddDisk"/>
- </seealso>
- <example file="sysutex/ex27"/>
- </element>
- <element name="DiskSize">
- <short>Return the total amount of diskspace.</short>
- <descr>
- <p>
- <var>DiskSize</var> returns the size (in bytes) of disk <var>Drive</var>.
- Drive is the number of the disk drive:
- </p>
- <dl>
- <dt>0</dt><dd> for the current drive.</dd>
- <dt>1</dt><dd> for the first floppy drive.</dd>
- <dt>2</dt><dd> for the second floppy drive.</dd>
- <dt>3</dt><dd> for the first hard-disk parttion.</dd>
- <dt>4-26</dt><dd> for all other drives and partitions.</dd>
- </dl>
- <remark>
- Under linux, and Unix in general, the concept of disk is
- different than the dos one, since the filesystem is seen as one big
- directory tree. For this reason, the <link id="DiskFree"/> and <var>DiskSize</var>
- functions must be mimicked using filenames that reside on the partitions.
- For more information, see <link id="AddDisk"/>
- </remark>
- <p>
- For an example, see <link id="DiskFree">DiskFree</link>.
- </p>
- </descr>
- <errors>
- On error, <var>-1</var> is returned.
- </errors>
- <seealso>
- <link id="DiskFree"/>
- <link id="AddDisk"/>
- </seealso>
- </element>
- <element name="GetCurrentDir">
- <short>Return the current working directory of the application.</short>
- <descr>
- <var>GetCurrentDir</var> returns the current working directory.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="SetCurrentDir"/>
- <link id="DiskFree"/>
- <link id="DiskSize"/>
- </seealso>
- <example file="sysutex/ex28"/>
- </element>
- <element name="RemoveDir">
- <short>Remove a directory from the filesystem.</short>
- <descr>
- <p>
- <var>RemoveDir</var> removes directory <var>Dir</var> from the disk.
- If the directory is not absolue, it is appended to the current working
- directory.
- </p>
- <p>
- For an example, see <link id="CreateDir"/>.
- </p>
- </descr>
- <errors>
- In case of error (e.g. the directory isn't empty) the function returns
- <var>False</var>. If successful, <var>True</var> is returned.
- </errors>
- <seealso>
- </seealso>
- </element>
- <element name="SetCurrentDir">
- <short>Set the current directory of the application.</short>
- <descr>
- <var>SetCurrentDir</var> sets the current working directory of your program
- to <var>NewDir</var>. It returns <var>True</var> if the function was successfull,
- <var>False</var> otherwise.
- </descr>
- <errors>
- In case of error, <var>False</var> is returned.
- </errors>
- <seealso>
- <link id="GetCurrentDir"/>
- </seealso>
- </element>
- <example file="sysutex/ex29"/>
- <element name="ChangeFileExt">
- <short>Change the extension of a filename.</short>
- <descr>
- <p>
- <var>ChangeFileExt</var> changes the file extension in <var>FileName</var> to
- <var>Extension</var>.
- The extension <var>Extension</var> includes the starting <var>.</var> (dot).
- The previous extension of <var>FileName</var> are all characters after the
- last <var>.</var>, the <var>.</var> character included.
- </p>
- <p>
- If <var>FileName</var> doesn't have an extension, <var>Extension</var> is just
- appended.
- </p>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="ExtractFileName"/>
- <link id="ExtractFilePath"/>
- <link id="ExpandFileName"/>
- </seealso>
- </element>
- <element name="DeleteFile">
- <short>Delete a file from the filesystem.</short>
- <descr>
- <var>DeleteFile</var> deletes file <var>FileName</var> from disk. The function
- returns <var>True</var> if the file was successfully removed, <var>False</var>
- otherwise.
- </descr>
- <errors>
- On error, <var>False</var> is returned.
- </errors>
- <seealso>
- <link id="FileCreate"/>
- <link id="FileExists"/>
- </seealso>
- <example file="sysutex/ex31"/>
- </element>
- <element name="DoDirSeparators">
- <short>Convert known directory separators to the current directory separator.</short>
- <descr>
- This function replaces all known directory separators in <var>FileName</var>
- to the directory separator character for the current system. The list of
- known separators is specified in the <link id="DirSeparators"/> constant.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="ExtractFileName"/>
- <link id="ExtractFilePath"/>
- </seealso>
- <example file="sysutex/ex32"/>
- </element>
- <element name="ExpandFileName">
- <short>Expand a relative filename to an absolute filename.</short>
- <descr>
- <var>ExpandFileName</var> expands the filename to an absolute filename.
- It changes all directory separator characters to the one appropriate for the
- system first.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="ExtractFileName"/>
- <link id="ExtractFilePath"/>
- <link id="ExtractFileDir"/>,
- <link id="ExtractFileDrive"/>
- <link id="ExtractFileExt"/>
- <link id="ExtractRelativePath"/>
- </seealso>
- <example file="sysutex/ex33"/>
- </element>
- <element name="ExpandUNCFileName">
- <short>Expand a relative filename to an absolute UNC filename.</short>
- <descr>
- <var>ExpandUNCFileName</var> runs <link id="ExpandFileName"/> on <var>FileName</var>
- and then attempts to replace the driveletter by the name of a shared disk.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="ExtractFileName"/>
- <link id="ExtractFilePath"/>
- <link id="ExtractFileDir"/>,
- <link id="ExtractFileDrive"/>
- <link id="ExtractFileExt"/>
- <link id="ExtractRelativePath"/>
- </seealso>
- </element>
- <element name="ExtractFileDir">
- <short>Extract the directory part of a filename.</short>
- <descr>
- <var>ExtractFileDir</var> returns only the directory part of <var>FileName</var>,
- not including a driveletter. The directory name has NO ending directory
- separator, in difference with <link id="ExtractFilePath"/>.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="ExtractFileName"/>
- <link id="ExtractFilePath"/>
- <link id="ExtractFileDir"/>,
- <link id="ExtractFileDrive"/>
- <link id="ExtractFileExt"/>
- <link id="ExtractRelativePath"/>
- </seealso>
- <example file="sysutex/ex34"/>
- </element>
- <element name="ExtractFileDrive">
- <short>Extract the drive part from a filename.</short>
- <descr>
- <p>
- <var>Extracts</var> the drive letter from a filename. Note that some
- operating systems do not support drive letters.
- </p>
- <p>
- For an example, see <link id="ExtractFileDir"/>.
- </p>
- </descr>
- <errors>
- </errors>
- <seealso>
- <link id="ExtractFileName"/>
- <link id="ExtractFilePath"/>
- <link id="ExtractFileDir"/>,
- <link id="ExtractFileDrive"/>
- <link id="ExtractFileExt"/>
- <link id="ExtractRelativePath"/>
- </seealso>
- </element>
- <element name="ExtractFileExt">
- <short>Return the extension from a filename.</short>
- <descr>
- <p>
- <var>ExtractFileExt</var> returns the extension (including the
- <var>.</var>(dot) character) of <var>FileName</var>.
- </p>
- <p>
- For an example, see <link id="ExtractFileDir"/>.
- </p>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="ExtractFileName"/>
- <link id="ExtractFilePath"/>
- <link id="ExtractFileDir"/>,
- <link id="ExtractFileDrive"/>
- <link id="ExtractFileExt"/>
- <link id="ExtractRelativePath"/>
- </seealso>
- </element>
- <element name="ExtractFileName">
- <short>Extract the filename part from a full path filename.</short>
- <descr>
- <p>
- <var>ExtractFileName</var> returns the filename part from <var>FileName</var>.
- The filename consists of all characters after the last directory separator
- character ('/' or '\') or drive letter.
- </p>
- <p>
- The full filename can always be reconstucted by concatenating the result
- of <link id="ExtractFilePath"/> and <var>ExtractFileName</var>.
- </p>
- <p>
- For an example, see <link id="ExtractFileDir"/>.
- </p>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="ExtractFileName"/>
- <link id="ExtractFilePath"/>
- <link id="ExtractFileDir"/>,
- <link id="ExtractFileDrive"/>
- <link id="ExtractFileExt"/>
- <link id="ExtractRelativePath"/>
- </seealso>
- </element>
- <element name="ExtractFilePath">
- <short>Extract the path from a filename.</short>
- <descr>
- <p>
- <var>ExtractFilePath</var> returns the path part (including driveletter) from
- <var>FileName</var>. The path consists of all characters before the last
- directory separator character ('/' or '\'), including the directory
- separator itself.
- In case there is only a drive letter, that will be returned.
- </p>
- <p>
- The full filename can always be reconstucted by concatenating the result
- of <var>ExtractFilePath</var> and <link id="ExtractFileName"/>.
- </p>
- <p>
- For an example, see <link id="ExtractFileDir"/>.
- </p>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="ExtractFileName"/>
- <link id="ExtractFilePath"/>
- <link id="ExtractFileDir"/>,
- <link id="ExtractFileDrive"/>
- <link id="ExtractFileExt"/>
- <link id="ExtractRelativePath"/>
- </seealso>
- </element>
- <element name="ExtractRelativePath">
- <short>Extract a relative path from a filename, given a base directory.</short>
- <descr>
- <var>ExtractRelativePath</var> constructs a relative path to go from
- <var>BaseName</var> to <var>DestName</var>. If <var>DestName</var> is on another drive
- (Not on Linux) then the whole <var>Destname</var> is returned.
- <em> Note:</em> This function does not exist in the Delphi unit.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="ExtractFileName"/>
- <link id="ExtractFilePath"/>
- <link id="ExtractFileDir"/>,
- <link id="ExtractFileDrive"/>
- <link id="ExtractFileExt"/>,
- </seealso>
- <example file="sysutex/ex35"/>
- </element>
- <element name="FileAge">
- <short>Return the timestamp of a file.</short>
- <descr>
- <var>FileAge</var> returns the last modification time of file <var>FileName</var>.
- The FileDate format can be transformed to <var>TDateTime</var> format with the
- <link id="FileDateToDateTime"/> function.
- </descr>
- <errors>
- In case of errors, <var>-1</var> is returned.
- </errors>
- <seealso>
- <link id="FileDateToDateTime"/>
- <link id="FileExists"/>
- <link id="FileGetAttr"/>
- </seealso>
- <example file="sysutex/ex36"/>
- </element>
- <element name="FileClose">
- <short>Close a file handle.</short>
- <descr>
- <p>
- <var>FileClose</var> closes the file handle <var>Handle</var>. After this call,
- attempting to read or write from the handle will result in an error.
- </p>
- <p>
- For an example, see <link id="FileCreate"/>
- </p>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="FileCreate"/>
- <link id="FileWrite"/>
- <link id="FileOpen"/>
- <link id="FileRead"/>,
- <link id="FileTruncate"/>
- <link id="FileSeek"/>
- </seealso>
- </element>
- <element name="FileCreate">
- <short>Create a new file and return a handle to it.</short>
- <descr>
- <var>FileCreate</var> creates a new file with name <var>FileName</var> on the disk and
- returns a file handle which can be used to read or write from the file with
- the <link id="FileRead"/> and <link id="FileWrite"/> functions.
- If a file with name <var>FileName</var> already existed on the disk, it is
- overwritten.
- </descr>
- <errors>
- If an error occurs (e.g. disk full or non-existent path), the function
- returns <var>-1</var>.
- </errors>
- <seealso>
- <link id="FileClose"/>
- <link id="FileWrite"/>
- <link id="FileOpen"/>
- <link id="FileRead"/>,
- <link id="FileTruncate"/>
- <link id="FileSeek"/>
- </seealso>
- <example file="sysutex/ex37"/>
- </element>
- <element name="FileExists">
- <short>Check whether a file exists in the filesystem.</short>
- <descr>
- <var>FileExists</var> returns <var>True</var> if a file with name <var>FileName</var>
- exists on the disk, <var>False</var> otherwise.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="FileAge"/>
- <link id="FileGetAttr"/>
- <link id="FileSetAttr"/>
- </seealso>
- <example file="sysutex/ex38"/>
- </element>
- <element name="FileGetAttr">
- <short>Return attributes of a file.</short>
- <descr>
- <p>
- <var>FileGetAttr</var> returns the attribute settings of file
- <var>FileName</var>. The attribute is a <var>OR</var>-ed combination
- of the following constants:
- </p>
- <dl>
- <dt>faReadOnly</dt><dd> The file is read-only.</dd>
- <dt>faHidden</dt>
- <dd>
- The file is hidden. (On unix, this means that the filename starts with a dot)
- </dd>
- <dt>faSysFile</dt>
- <dd>
- The file is a system file (On unix, this means that the file is a character, block or FIFO file).
- </dd>
- <dt>faVolumeId</dt>
- <dd> Volume Label. Not possible under unix.</dd>
- <dt>faDirectory</dt><dd> File is a directory.</dd>
- <dt>faArchive</dt><dd> file is an archive. Not possible on Unix</dd>
- </dl>
- </descr>
- <errors>
- In case of error, -1 is returned.
- </errors>
- <seealso>
- <link id="FileSetAttr"/>
- <link id="FileAge"/>
- <link id="FileGetDate"/>.
- </seealso>
- <example file="sysutex/ex40"/>
- </element>
- <element name="FileGetDate">
- <short>Return the file time of an opened file.</short>
- <descr>
- <var>FileGetdate</var> returns the filetime of the opened file with filehandle
- <var>Handle</var>. It is the same as <link id="FileAge"/>, with this difference that
- <var>FileAge</var> only needs the file name, while <var>FilegetDate</var> needs an
- open file handle.
- </descr>
- <errors>
- On error, -1 is returned.
- </errors>
- <seealso>
- <link id="FileAge"/>
- </seealso>
- <example file="sysutex/ex39"/>
- </element>
- <element name="FileOpen">
- <short>Open an existing file and return a filehandle</short>
- <descr>
- <p>
- <var>FileOpen</var> opens a file with name <var>FileName</var> with mode <var>Mode</var>.
- <var>Mode</var> can be one of the following constants:
- </p>
- <dl>
- <dt>fmOpenRead</dt><dd> The file is opened for reading.</dd>
- <dt>fmOpenWrite</dt><dd> The file is opened for writing.</dd>
- <dt>fmOpenReadWrite</dt><dd> The file is opened for reading and
- writing.</dd>
- </dl>
- <p>
- If the file has been successfully opened, it can be read from or written to
- (depending on the <var>Mode</var> parameter) with the <link id="FileRead"/> and
- <var>FileWrite</var> functions.
- </p>
- <remark>
- Remark that you cannot open a file if it doesn't exist yet, i.e. it will not
- be created for you. If you want tp create a new file, or overwrite an old
- one, use the <link id="FileCreate"/> function.
- </remark>
- <p>
- For an example, see <link id="FileOpen"/>
- </p>
- </descr>
- <errors>
- On Error, -1 is returned.
- </errors>
- <seealso>
- <link id="FileClose"/>
- <link id="FileWrite"/>
- <link id="FileCreate"/>
- <link id="FileRead"/>,
- <link id="FileTruncate"/>
- <link id="FileSeek"/>
- </seealso>
- </element>
- <element name="FileRead">
- <short>Read data from a filehandle in a buffer.</short>
- <descr>
- <p>
- <var>FileRead</var> reads <var>Count</var> bytes from file-handle <var>Handle</var> and
- stores them into <var>Buffer</var>. Buffer must be at least <var>Count</var> bytes
- long. No checking on this is performed, so be careful not to overwrite any
- memory. <var>Handle</var> must be the result of a <link id="FileOpen"/> call.
- </p>
- <p>
- For an example, see <link id="FileCreate"/>
- </p>
- </descr>
- <errors>
- On error, -1 is returned.
- </errors>
- <seealso>
- <link id="FileClose"/>
- <link id="FileWrite"/>
- <link id="FileCreate"/>
- <link id="FileOpen"/>,
- <link id="FileTruncate"/>
- <link id="FileSeek"/>
- </seealso>
- </element>
- <element name="FileSearch">
- <short>Search for a file in a path.</short>
- <descr>
- <var>FileSearch</var> looks for the file <var>Name</var> in <var>DirList</var>, where
- dirlist is a list of directories, separated by semicolons or colons.
- It returns the full filename of the first match found.
- </descr>
- <errors>
- On error, an empty string is returned.
- </errors>
- <seealso>
- <link id="ExpandFileName"/>
- <link id="FindFirst"/>
- </seealso>
- <example file="sysutex/ex41"/>
- </element>
- <element name="FileSeek">
- <short>Set the current file position on a file handle.</short>
- <descr>
- <p>
- <var>FileSeek</var> sets the file pointer on position <var>Offset</var>, starting from
- <var>Origin</var>. Origin can be one of the following values:
- </p>
- <dl>
- <dt>fsFromBeginning</dt>
- <dd> <var>Offset</var> is relative to the first byte of the file. This
- position is zero-based. i.e. the first byte is at offset 0.
- </dd>
- <dt>fsFromCurrent</dt><dd><var>Offset</var> is relative to the current position.</dd>
- <dt>fsFromEnd</dt>
- <dd><var>Offset</var> is relative to the end of the file.
- This means that <var>Offset</var> can only be zero or negative in this case.
- </dd>
- </dl>
- <p>
- If successfull, the function returns the new file position, relative to the
- beginning of the file.
- </p>
- <remark>
- The abovementioned constants do not exist in Delphi.
- </remark>
- </descr>
- <errors>
- On error, -1 is returned.
- </errors>
- <seealso>
- <link id="FileClose"/>
- <link id="FileWrite"/>
- <link id="FileCreate"/>
- <link id="FileOpen"/>
- <link id="FileRead"/>
- <link id="FileTruncate"/>
- </seealso>
- <example file="sysutex/ex42"/>
- </element>
- <element name="FileSetAttr">
- <short>Set the attributes of a file.</short>
- <descr>
- <p>
- <var>FileSetAttr</var> sets the attributes of <var>FileName</var> to <var>Attr</var>.
- If the function was successful, 0 is returned, -1 otherwise.
- <var>Attr</var> can be set to an OR-ed combination of the pre-defined
- <var>faXXX</var> constants.
- </p>
- <p>
- This function is not implemented on Unixes.
- </p>
- </descr>
- <errors>
- On error, -1 is returned (always on Unixes).
- </errors>
- <seealso>
- <link id="FileGetAttr"/>
- <link id="FileGetDate"/>
- <link id="FileSetDate"/>.
- </seealso>
- </element>
- <element name="FileSetDate">
- <short>Set the date of a file.</short>
- <descr>
- <p>
- <var>FileSetDate</var> sets the file date of the file with handle <var>Handle</var>
- to <var>Age</var>, where <var>Age</var> is a DOS date-and-time stamp value.
- </p>
- <p>
- The function returns zero if successfull. (not on unixes, where it is not
- implemented)
- </p>
- </descr>
- <errors>
- On Unix, -1 is always returned, since this is impossible to implement.
- On Windows and DOS, a negative error code is returned.
- </errors>
- <seealso>
- </seealso>
- </element>
- <element name="FileTruncate">
- <short>Truncate an open file to a given size.</short>
- <descr>
- <p>
- <var>FileTruncate</var> truncates the file with handle <var>Handle</var> to
- <var>Size</var> bytes. The file must have been opened for writing prior
- to this call. The function returns <var>True</var> is successful, <var>False</var>
- otherwise.
- </p>
- <p>
- For an example, see <link id="FileCreate"/>.
- </p>
- </descr>
- <errors>
- On error, the function returns <var>False</var>.
- </errors>
- <seealso>
- <link id="FileClose"/>
- <link id="FileWrite"/>
- <link id="FileCreate"/>
- <link id="FileOpen"/>
- <link id="FileRead"/>
- <link id="FileSeek"/>
- </seealso>
- </element>
- <element name="FileWrite">
- <short>Write data from a buffer to a given filehandle.</short>
- <descr>
- <p>
- <var>FileWrite</var> writes <var>Count</var> bytes from <var>Buffer</var> to the file with
- handle <var>Handle</var>. Prior to this call, the file must have been opened
- for writing. <var>Buffer</var> must be at least <var>Count</var> bytes large, or
- a memory access error may occur.
- </p>
- <p>
- The function returns the number of bytes written, or -1 in case of an
- error.
- </p>
- <p>
- For an example, see <link id="FileCreate"/>.
- </p>
- </descr>
- <errors>
- In case of error, -1 is returned.
- </errors>
- <seealso>
- <link id="FileClose"/>
- <link id="FileCreate"/>
- <link id="FileOpen"/>
- <link id="FileRead"/>
- <link id="FileTruncate"/>
- <link id="FileSeek"/>
- </seealso>
- </element>
- <element name="FindClose">
- <short>Close a find handle</short>
- <descr>
- <p>
- <var>FindClose</var> ends a series of <link id="FindFirst"/>/<link id="FindNext"/> calls,
- and frees any memory used by these calls. It is <em> absolutely</em> necessary
- to do this call, or huge memory losses may occur.
- </p>
- <p>
- For an example, see <link id="FindFirst"/>.
- </p>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="FindFirst"/>
- <link id="FindNext"/>
- </seealso>
- </element>
- <element name="FindFirst">
- <short>Start a file search and return a findhandle</short>
- <descr>
- <p>
- <var>FindFirst</var> looks for files that match the name (possibly with
- wildcards) in <var>Path</var> and attributes <var>Attr</var>. It then fills up the
- <var>Rslt</var> record with data gathered about the file. It returns 0 if a file
- matching the specified criteria is found, a nonzero value (-1 on linux)
- otherwise.
- </p>
- <p>
- The <var>Rslt</var> record can be fed to subsequent calls to <var>FindNext</var>, in
- order to find other files matching the specifications.
- </p>
- <remark>
- A <var>FindFirst</var> call must <em> always</em> be followed by a
- <link id="FindClose">FindClose</link> call with the same <var>Rslt</var> record. Failure to do so will
- result in memory loss.
- </remark>
- </descr>
- <errors>
- On error the function returns -1 on linux, a nonzero error code on Windows.
- </errors>
- <seealso>
- <link id="FindClose"/>{FindCloseSys}, <link id="FindNext"/>.
- </seealso>
- <example file="sysutex/ex43"/>
- </element>
- <element name="FindNext">
- <short>Find the next entry in a findhandle.</short>
- <descr>
- <p>
- <var>FindNext</var> finds a next occurrence of a search sequence initiated by
- <var>FindFirst</var>. If another record matching the criteria in Rslt is found, 0
- is returned, a nonzero constant is returned otherwise.
- </p>
- <remark>
- The last <var>FindNext</var> call must <em> always</em> be followed by a
- <var>FindClose</var> call with the same <var>Rslt</var> record. Failure to do so will
- result in memory loss.
- </remark>
- <p>
- For an example, see <link id="FindFirst"/>
- </p>
- </descr>
- <errors>
- On error (no more file is found), a nonzero constant is returned.
- </errors>
- <seealso>
- <link id="FindFirst"/>
- <link id="FindClose"/>
- </seealso>
- </element>
- <element name="GetDirs">
- <short>Return a list of directory names from a path.</short>
- <descr>
- <var>GetDirs</var> splits DirName in a null-byte separated list of directory names,
- <var>Dirs</var> is an array of <var>PChars</var>, pointing to these directory names.
- The function returns the number of directories found, or -1 if none were found.
- DirName must contain only OSDirSeparator as Directory separator chars.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="ExtractRelativePath"/>
- </seealso>
- <example file="sysutex/ex45"/>
- </element>
- <element name="RenameFile">
- <short>Rename a file.</short>
- <descr>
- <var>RenameFile</var> renames a file from <var>OldName</var> to <var>NewName</var>. The
- function returns <var>True</var> if successful, <var>False</var> otherwise.
- <em> Remark:</em> you cannot rename across disks or partitions.
- </descr>
- <errors>
- On Error, <var>False</var> is returned.
- </errors>
- <seealso>
- <link id="DeleteFile"/>
- </seealso>
- <example file="sysutex/ex44"/>
- </element>
- <element name="SetDirSeparators">
- <short>Set the directory separators to the known directory separators.</short>
- <descr>
- <var>SetDirSeparators</var> returns <var>FileName</var> with all possible
- DirSeparators replaced by <var>OSDirSeparator</var>.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="ExpandFileName"/>
- <link id="ExtractFilePath"/>
- <link id="ExtractFileDir"/>
- </seealso>
- <example file="sysutex/ex47"/>
- </element>
- <element name="StrAlloc">
- <short>Allocate a null-terminated string on the heap.</short>
- <descr>
- <p>
- <var>StrAlloc</var> reserves memory on the heap for a string with length <var>Len</var>,
- terminating <var>#0</var> included, and returns a pointer to it.
- </p>
- <p>
- Additionally, <var>StrAlloc</var> allocates 4 extra bytes to store the size of
- the allocated memory. Therefore this function is NOT compatible with the
- <link id="StrAlloc"/> function of the <var>Strings</var> unit.
- </p>
- <p>
- For an example, see <link id="StrBufSize"/>.
- </p>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="StrBufSize"/>
- <link id="StrDispose"/>
- <link id="StrAlloc"/>
- </seealso>
- </element>
- <element name="StrBufSize">
- <short>Return the size of a null-terminated string allocated on the heap.</short>
- <descr>
- <var>StrBufSize</var> returns the memory allocated for <var>Str</var>. This function
- ONLY gives the correct result if <var>Str</var> was allocated using
- <link id="StrAlloc">StrAlloc</link>.
- </descr>
- <errors>
- If no more memory is available, a runtime error occurs.
- </errors>
- <seealso>
- <link id="StrAlloc">StrAlloc</link>
- <link id="StrDispose"/>
- </seealso>
- <example file="sysutex/ex46"/>
- </element>
- <element name="StrDispose">
- <short>Dispose of a null-terminated string on the heap.</short>
- <descr>
- <p>
- <var>StrDispose</var> frees any memory allocated for <var>Str</var>. This function
- will only function correctly if <var>Str</var> has been allocated using
- <link id="StrAlloc">StrAlloc</link> from the <file>SysUtils</file> unit.
- </p>
- <p>
- For an example, see <link id="StrBufSize"/>.
- </p>
- </descr>
- <errors>
- If an invalid pointer is passed, or a pointer not allocated with
- <var>StrAlloc</var>, an error may occur.
- </errors>
- <seealso>
- <link id="StrBufSize"/>
- <link id="StrAlloc"/>
- <link id="StrDispose"/>
- </seealso>
- </element>
- <element name="StrPCopy">
- <short>Copy an ansistring to a null-terminated string.</short>
- <descr>
- <p>
- <var>StrPCopy</var> Converts the Ansistring in <var>Source</var> to a Null-terminated
- string, and copies it to <var>Dest</var>. <var>Dest</var> needs enough room to contain
- the string <var>Source</var>, i.e. <var>Length(Source)+1</var> bytes.
- </p>
- <p>
- For an example, see <link id="StrPCopy"/>.
- </p>
- </descr>
- <errors>
- No checking is performed to see whether <var>Dest</var> points to enough memory
- to contain <var>Source</var>.
- </errors>
- <seealso>
- <link id="StrPLCopy"/>
- <link id="StrPCopy"/>
- </seealso>
- </element>
- <element name="StrPLCopy">
- <short>Copy a limited number of characters from an ansistring to a
- null-terminated string.</short>
- <descr>
- <var>StrPLCopy</var> Converts maximally <var>MaxLen</var> characters of the
- Ansistring in <var>Source</var> to a Null-terminated string, and copies
- it to <var>Dest</var>. <var>Dest</var> needs enough room to contain
- the characters.
- </descr>
- <errors>
- No checking is performed to see whether <var>Dest</var> points to enough memory
- to contain L characters of <var>Source</var>.
- </errors>
- <seealso>
- <link id="StrPCopy"/>.
- </seealso>
- </element>
- <element name="StrPas">
- <short>Convert a null-terminated string to an ansistring.</short>
- <descr>
- <p>
- Converts a null terminated string in <var>Str</var> to an Ansitring, and returns
- this string. This string is NOT truncated at 255 characters as is the
- </p>
- <p>
- For an example, see <link id="StrPas"/>.
- </p>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="StrPas"/>
- </seealso>
- </element>
- <element name="AdjustLineBreaks">
- <short>Convert possible line-endings to the currently valid line ending.</short>
- <descr>
- <var>AdjustLineBreaks</var> will change all <var>#13</var> characters with
- <var>#13#10</var> on Windowsnt and dos. On linux, all <var>#13#10</var>
- character pairs are converted to <var>#10</var> and single <var>#13</var>
- characters also.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="AnsiCompareStr"/>
- <link id="AnsiCompareText"/>
- </seealso>
- <example file="sysutex/ex48"/>
- </element>
- <element name="AnsiCompareStr">
- <short>Compare 2 ansistrings, case sensitive, ignoring accents characters.</short>
- <descr>
- <p>
- <var>AnsiCompareStr</var> compares two strings and returns the following
- result:
- </p>
- <dl>
- <dt>< 0</dt><dd> if <var>S1<S2</var>.</dd>
- <dt>0</dt><dd>if <var>S1=S2</var>.</dd>
- <dt>> 0</dt><dd> if <var>S1>S2</var>.</dd>
- </dl>
- <p>
- The comparision takes into account Ansi characters, i.e. it takes
- care of strange accented characters. Contrary to <link id="AnsiCompareText"/>,
- the comparision is case sensitive.
- </p>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="AdjustLineBreaks"/>
- <link id="AnsiCompareText"/>
- </seealso>
- <example file="sysutex/ex49"/>
- </element>
- <element name="AnsiCompareText">
- <short>Compare 2 ansistrings, case insensitive, ignoring accents characters.</short>
- <descr>
- <p>
- <var>AnsiCompareText</var> compares two strings and returns the following
- result:
- </p>
- <dl>
- <dt><0</dt><dd>if <var>S1<S2</var>.</dd>
- <dt>0</dt><dd>if <var>S1=S2</var>.</dd>
- <dt>>0</dt><dd>if <var>S1>S2</var>.</dd>
- </dl>
- <p>
- the comparision takes into account Ansi characters, i.e. it takes
- care of strange accented characters. Contrary to <link id="AnsiCompareStr"/>,
- the comparision is case insensitive.
- </p>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="AdjustLineBreaks"/>
- <link id="AnsiCompareText"/>
- </seealso>
- <example file="sysutex/ex50"/>
- </element>
- <element name="AnsiExtractQuotedStr">
- <short>Removes the first quoted string from a string.</short>
- <descr>
- <var>AnsiExtractQuotedStr</var> returns the first quoted string in
- <var>Src</var>, and deletes the result from <var>Src</var>. The resulting
- string has with <var>Quote</var> characters removed from the beginning and
- end of the string (if they are present), and double <var>Quote</var>
- characters replaced by a single <var>Quote</var> characters.
- As such, it revereses the action of <link id="AnsiQuotedStr"/>.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="AnsiQuotedStr"/>
- </seealso>
- <example file="sysutex/ex51"/>
- </element>
- <element name="AnsiLastChar">
- <short>Return a pointer to the last character of a string.</short>
- <descr>
- This function returns a pointer to the last character of <var>S</var>.
- Since multibyte characters are not yet supported, this is the same
- as <var>@S[Length(S)])</var>.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="AnsiStrLastChar"/>
- </seealso>
- <example file="sysutex/ex52"/>
- </element>
- <element name="AnsiLowerCase">
- <short>Return a lowercase version of a string.</short>
- <descr>
- <p>
- <var>AnsiLowerCase</var> converts the string <var>S</var> to lowercase characters
- and returns the resulting string.
- It takes into account the operating system language
- settings when doing this, so spcial characters are converted correctly as
- well.
- </p>
- <remark>
- On linux, no language setting is taken in account yet.
- </remark>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="AnsiUpperCase"/>
- <link id="AnsiStrLower"/>
- <link id="AnsiStrUpper"/>
- </seealso>
- <example file="sysutex/ex53"/>
- </element>
- <element name="AnsiQuotedStr">
- <short>Return a quoted version of a string.</short>
- <descr>
- <p>
- <var>AnsiQuotedString</var> quotes the string <var>S</var> and returns the result.
- This means that it puts the <var>Quote</var> character at both the beginning and
- end of the string and replaces any occurrence of <var>Quote</var> in <var>S</var>
- with 2 <var>Quote</var> characters. The action of <var>AnsiQuotedString</var> can be
- reversed by <link id="AnsiExtractQuotedStr"/>.
- </p>
- <p>
- For an example, see <link id="AnsiExtractQuotedStr"/>
- </p>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="AnsiExtractQuotedStr"/>
- </seealso>
- </element>
- <element name="AnsiStrComp">
- <short>Compare two null-terminated strings. Case sensitive.</short>
- <descr>
- <p>
- <var>AnsiStrComp</var> compares 2 <var>PChar</var> strings, and returns the following
- result:
- </p>
- <dl>
- <dt><0</dt><dd> if <var>S1<S2</var>.</dd>
- <dt>0</dt><dd> if <var>S1=S2</var>.</dd>
- <dt>>0</dt><dd> if <var>S1>S2</var>.</dd>
- </dl>
- <p>
- The comparision of the two strings is case-sensitive.
- The function does not yet take internationalization settings into account.
- </p>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="AnsiCompareText"/>
- <link id="AnsiCompareStr"/>
- </seealso>
- <example file="sysutex/ex54"/>
- </element>
- <element name="AnsiStrIComp">
- <short>Compare two null-terminated strings. Case insensitive.</short>
- <descr>
- <p>
- <var>AnsiStrIComp</var> compares 2 <var>PChar</var> strings, and returns the following
- result:
- </p>
- <dl>
- <dt><0</dt><dd> if <var>S1<S2</var>.</dd>
- <dt>0</dt><dd> if <var>S1=S2</var>.</dd>
- <dt>>0</dt><dd> if <var>S1>S2</var>.</dd>
- </dl>
- <p>
- The comparision of the two strings is case-insensitive.
- The function does not yet take internationalization settings into account.
- </p>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="AnsiCompareText"/>
- <link id="AnsiCompareStr"/>
- </seealso>
- <example file="sysutex/ex55"/>
- </element>
- <element name="AnsiStrLastChar">
- <short>Return a pointer to the last character of a string.</short>
- <descr>
- <p>
- Return a pointer to the last character of the null-terminated string.
- </p>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="AnsiCompareText"/>
- <link id="AnsiCompareStr"/>
- </seealso>
- <example file="sysutex/ex56"/>
- </element>
- <element name="AnsiStrLIComp">
- <short>Compares a given number of characters of a string, case insensitive.</short>
- <descr>
- <p>
- <var>AnsiStrLIComp</var> compares the first <var>Maxlen</var> characters of
- 2 <var>PChar</var> strings, <var>S1</var> and <var>S2</var>, and returns the following
- result:
- </p>
- <dl>
- <dt><0</dt><dd> if <var>S1<S2</var>.</dd>
- <dt>0</dt><dd> if <var>S1=S2</var>.</dd>
- <dt>>0</dt><dd> if <var>S1>S2</var>.</dd>
- </dl>
- <p>
- The comparision of the two strings is case-insensitive.
- The function does not yet take internationalization settings into account.
- </p>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="AnsiCompareText"/>
- <link id="AnsiCompareStr"/>
- </seealso>
- <example file="sysutex/ex57"/>
- </element>
- <element name="AnsiStrLower">
- <short>Convert a null-terminated string to all-lowercase characters.</short>
- <descr>
- <p>
- <var>AnsiStrLower</var> converts the PChar <var>Str</var> to lowercase characters
- and returns the resulting pchar. Note that <var>Str</var> itself is modified,
- not a copy, as in the case of <link id="AnsiLowerCase"/>.
- It takes into account the operating system language
- settings when doing this, so special characters are converted correctly as
- well.
- </p>
- <remark>
- On unix, no language setting is taken in account yet.
- </remark>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="AnsiStrUpper"/>
- <link id="AnsiLowerCase"/>
- </seealso>
- <example file="sysutex/ex59"/>
- </element>
- <element name="AnsiStrUpper">
- <short>Convert a null-terminated string to all-uppercase characters.</short>
- <descr>
- <p>
- <var>AnsiStrUpper</var> converts the <var>PChar</var> <var>Str</var> to uppercase characters
- and returns the resulting string. Note that <var>Str</var> itself is modified,
- not a copy, as in the case of <link id="AnsiUpperCase"/>.
- It takes into account the operating system language
- settings when doing this, so special characters are converted correctly as
- well.
- </p>
- <remark> On linux, no language setting is taken in account yet.
- </remark>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="AnsiUpperCase"/>
- <link id="AnsiStrLower"/>
- <link id="AnsiLowerCase"/>
- </seealso>
- <example file="sysutex/ex60"/>
- </element>
- <element name="AnsiUpperCase">
- <short>Return an uppercase version of a string, taking into account special
- characters.</short>
- <descr>
- <p>
- <var>AnsiUpperCase</var> converts the string <var>S</var> to uppercase characters
- and returns the resulting string.
- It takes into account the operating system language
- settings when doing this, so special characters are converted correctly as
- well.
- </p>
- <remark>
- On linux, no language setting is taken in account yet.
- </remark>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="AnsiStrUpper"/>
- <link id="AnsiStrLower"/>
- <link id="AnsiLowerCase"/>
- </seealso>
- <example file="sysutex/ex61"/>
- </element>
- <element name="AppendStr">
- <short>Append one ansistring to another.</short>
- <descr>
- <p>
- <var>AppendStr</var> appends <var>S</var> to Dest.
- </p>
- <p>
- This function is provided for Delphi
- compatibility only, since it is completely equivalent to <var>Dest:=Dest+S</var>.
- </p>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="AssignStr"/>
- <link id="NewStr"/>
- <link id="DisposeStr"/>
- </seealso>
- <example file="sysutex/ex62"/>
- </element>
- <element name="AssignStr">
- <short>Assigns an ansistring to a null-terminated string.</short>
- <descr>
- <p>
- <var>AssignStr</var> allocates <var>S</var> to <var>P</var>. The old value of <var>P</var> is
- disposed of.
- </p>
- <p>
- This function is provided for Delphi compatibility only. <var>AnsiStrings</var>
- are managed on the heap and should be preferred to the mechanism of
- dynamically allocated strings.
- </p>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="NewStr"/>
- <link id="AppendStr"/>
- <link id="DisposeStr"/>
- </seealso>
- <example file="sysutex/ex63"/>
- </element>
- <element name="BCDToInt">
- <short>Convert a BCD coded integer to a normal integer.</short>
- <descr>
- <var>BCDToInt</var> converts a <var>BCD</var> coded integer to a normal integer.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="StrToInt"/>
- <link id="IntToStr"/>
- </seealso>
- <example file="sysutex/ex64"/>
- </element>
- <element name="CompareMem">
- <short>Compare two memory areas.</short>
- <descr>
- <p>
- <var>CompareMem</var> compares, byte by byte, 2 memory areas pointed
- to by <var>P1</var> and <var>P2</var>, for a length of <var>L</var> bytes.
- </p>
- <p>
- It returns the following values:
- </p>
- <dl>
- <dt><0</dt><dd> if at some position the byte at <var>P1</var> is less than the byte at the
- same postion at <var>P2</var>.
- </dd>
- <dt>0</dt><dd> if all <var>L</var> bytes are the same.</dd>
- <dt>>0</dt><dd>if at some position the byte at <var>P1</var> is greater than the
- byte at the same postion at <var>P2</var>.</dd>
- </dl>
- </descr>
- <errors>
- </errors>
- <seealso>
- </seealso>
- </element>
- <element name="CompareStr">
- <short>Compare 2 ansistrings case-sensitively, ignoring special characters.</short>
- <descr>
- <p>
- <var>CompareStr</var> compares two strings, <var>S1</var> and <var>S2</var>,
- and returns the following
- result:
- </p>
- <dl>
- <dt><0</dt><dd> if <var>S1<S2</var>.</dd>
- <dt>0</dt><dd> if <var>S1=S2</var>.</dd>
- <dt>>0</dt><dd> if <var>S1>S2</var>.</dd>
- </dl>
- <p>
- The comparision of the two strings is case-sensitive.
- The function does not take internationalization settings into account, it
- simply compares ASCII values.
- </p>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="AnsiCompareText"/>
- <link id="AnsiCompareStr"/>
- <link id="CompareText"/>
- </seealso>
- <example file="sysutex/ex65"/>
- </element>
- <element name="CompareText">
- <short>Compare 2 ansistrings case insensitive.</short>
- <descr>
- <p>
- <var>CompareText</var> compares two strings, <var>S1</var> and <var>S2</var>,
- and returns the following
- result:
- </p>
- <dl>
- <dt><0</dt><dd> if <var>S1<S2</var>.</dd>
- <dt>0</dt><dd> if <var>S1=S2</var>.</dd>
- <dt>>0</dt><dd> if <var>S1>S2</var>.</dd>
- </dl>
- <p>
- The comparision of the two strings is case-insensitive.
- The function does not take internationalization settings into account, it
- simply compares ASCII values.
- </p>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="AnsiCompareText"/>
- <link id="AnsiCompareStr"/>
- <link id="CompareStr"/>
- </seealso>
- <example file="sysutex/ex66"/>
- </element>
- <element name="DisposeStr">
- <short>Dispose an ansistring from the heap.</short>
- <descr>
- <p>
- <var>DisposeStr</var> removes the dynamically allocated string <var>S</var> from the
- heap, and releases the occupied memory.
- </p>
- <p>
- This function is provided for Delphi compatibility only. <var>AnsiStrings</var>
- are managed on the heap and should be preferred to the mechanism of
- dynamically allocated strings.
- </p>
- <p>
- For an example, see <link id="DisposeStr"/>.
- </p>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="NewStr"/>
- <link id="AppendStr"/>
- <link id="AssignStr"/>
- </seealso>
- </element>
- <element name="FloatToStr">
- <short>Convert a float value to a string using a fixed format.</short>
- <descr>
- <p>
- <var>FloatToStr</var> converts the floating point variable <var>Value</var> to a
- string representation. It will choose the shortest possible notation of the
- two following formats:
- </p>
- <dl>
- <dt>Fixed format</dt><dd> will represent the string in fixed notation,
- </dd><dt>Decimal format</dt><dd> will represent the string in scientific
- notation.</dd>
- </dl>
- <p>
- More information on these formats can be found in <link id="FloatToStrF"/>.
- <var>FloatToStr</var> is completely equivalent to the following call:
- </p>
- <code>
- FloatToStrF(Value, ffGeneral,15, 0);
- </code>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="FloatToStrF"/>
- <link id="FormatFloat"/>
- <link id="StrToFloat"/>
- </seealso>
- <example file="sysutex/ex67"/>
- </element>
- <element name="FloatToStrF">
- <short>Convert a float value to a string using a given format.</short>
- <descr>
- <p>
- <var>FloatToStrF</var> converts the floating point number <var>value</var> to a string
- representation, according to the settings of the parameters <var>Format</var>,
- <var>Precision</var> and <var>Digits</var>.
- </p>
- <p>
- The meaning of the <var>Precision</var> and <var>Digits</var> parameter depends on the
- <var>Format</var> parameter. The format is controlled mainly by the <var>Format</var>
- parameter. It can have one of the following values:
- </p>
- <dl>
- <dt>ffcurrency</dt>
- <dd> Money format. <var>Value</var> is converted to a string using
- the global variables <var>CurrencyString</var>, <var>CurrencyFormat</var> and
- <var>NegCurrencyFormat</var>. The <var>Digits</var> paramater specifies the number of digits
- following the decimal point and should be in the range -1 to 18. If Digits
- equals <var>-1</var>, <var>CurrencyDecimals</var> is assumed. The <var>Precision</var> parameter is ignored.
- </dd>
- <dt>ffExponent</dt>
- <dd> Scientific format. <var>Value</var> is converted to a
- string using scientific notation: 1 digit before the decimal point, possibly
- preceded by a minus sign if <var>Value</var> is negative. The number of
- digits after the decimal point is controlled by <var>Precision</var> and must lie
- in the range 0 to 15.
- </dd>
- <dt>ffFixed</dt>
- <dd> Fixed point format. <var>Value</var> is converted to a string
- using fixed point notation. The result is composed of all digits of the
- integer part of <var>Value</var>, preceded by a minus sign if <var>Value</var> is
- negative. Following the integer part is <var>DecimalSeparator</var> and then the
- fractional part of <var>Value</var>, rounded off to <var>Digits</var> numbers.
- If the number is too large then the result will be in scientific notation.
- </dd>
- <dt>ffGeneral</dt>
- <dd> General number format. The argument is converted to a
- string using <var>ffExponent</var> or <var>ffFixed</var> format, depending on wich one
- gives the shortest string. There will be no trailing zeroes. If <var>Value</var>
- is less than <var>0.00001</var> or if the number of decimals left of the decimal
- point is larger than <var>Precision</var> then scientific notation is used, and
- <var>Digits</var> is the minimum number of digits in the exponent. Otherwise
- <var>Digits</var> is ignored.
- </dd>
- <dt>ffnumber</dt>
- <dd> Is the same as <var>ffFixed</var>, except that thousand separators
- are inserted in the resultig string.
- </dd>
- </dl>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="FloatToStr"/>
- <link id="FloatToText"/>
- </seealso>
- <example file="sysutex/ex68"/>
- </element>
- <element name="FloatToText">
- <short>Return a string representation of a float, with a given format.</short>
- <descr>
- <p>
- <var>FloatToText</var> converts the floating point variable <var>Value</var> to a
- string representation and stores it in <var>Buffer</var>. The conversion is
- governed by <var>format</var>, <var>Precisison</var> and <var>Digits</var>.
- more information on these parameters can be found in <link id="FloatToStrF"/>.
- <var>Buffer</var> should point to enough space to hold the result. No checking on
- this is performed.
- </p>
- <p>
- The result is the number of characters that was copied in <var>Buffer</var>.
- </p>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="FloatToStr"/>
- <link id="FloatToStrF"/>
- </seealso>
- <example file="sysutex/ex69"/>
- </element>
- <element name="FmtStr">
- <short>Format a string with given arguments.</short>
- <descr>
- <var>FmtStr</var> calls <link id="Format"/> with <var>Fmt</var> and <var>Args</var> as arguments,
- and stores the result in <var>Res</var>. For more information on how the
- resulting string is composed, see <link id="Format"/>.
- </descr>
- <errors>
- In case of error, a <var>EConvertError</var> exception is raised.
- </errors>
- <seealso>
- <link id="Format"/>
- <link id="FormatBuf"/>.
- </seealso>
- <example file="sysutex/ex70"/>
- </element>
- <element name="Format">
- <short>Format a string with given arguments.</short>
- <descr>
- <p>
- Format replaces all placeholders in<var>Fmt</var> with the arguments passed in
- <var>Args</var> and returns the resulting string. A placeholder looks as follows:
- </p>
- <code>
- '%' [Index':'] ['-'] [Width] ['.' Precision] ArgType
- </code>
- <p>
- elements between single quotes must be typed as shown without the quotes,
- and elements between square brackets <var>[ ]</var> are optional. The meaning
- of the different elements is shown below:
- </p>
- <dl>
- <dt>'%'</dt>
- <dd> starts the placeholder. If you want to insert a literal
- <var>%</var> character, then you must insert two of them : <var>%%</var>.
- </dd>
- <dt>Index ':'</dt>
- <dd> takes the <var>Index</var>-th element in the argument array
- as the element to insert.
- </dd>
- <dt>'-'</dt>
- <dd> tells <var>Format</var> to left-align the inserted text. The default
- behaviour is to right-align inserted text. This can only take effect if the
- <var>Width</var> element is also specified.
- </dd>
- <dt>Width</dt>
- <dd> the inserted string must have at least have <var>Width</var>
- characters. If not, the inserted string will be padded with spaces. By
- default, the string is left-padded, resulting in a right-aligned string.
- This behaviour can be changed by the <var>'-'</var> character.
- </dd>
- <dt>'.' Precision</dt>
- <dd> Indicates the precision to be used when converting
- the argument. The exact meaning of this parameter depends on <var>ArgType</var>.
- </dd>
- </dl>
- <p>
- The <var>Index</var>, <var>Width</var> and <var>Precision</var> parameters can be replaced
- by <var>*</var>, in which case their value will be read from the next element in
- the <var>Args</var> array. This value must be an integer, or an
- <var>EConvertError</var> exception will be raised.
- </p>
- <p>
- The argument type is determined from <var>ArgType</var>. It can have one of the
- following values (case insensitive):
- </p>
- <dl>
- <dt>D</dt>
- <dd>
- Decimal format. The next argument in the <var>Args</var> array should be
- an integer. The argument is converted to a decimal string,. If precision is
- specified, then the string will have at least <var>Precision</var> digits in it.
- If needed, the string is (left) padded with zeroes.
- </dd>
- <dt>E</dt>
- <dd>
- <p>
- Scientific format. The next argument in the <var>Args</var> array should
- be a Floating point value. The argument is converted to a decimal string
- using scientific notation, using <link id="FloatToStrF"/>, where the optional
- precision is used to specify the total number of decimals. (defalt a valueof
- 15 is used). The exponent is formatted using maximally 3 digits.
- </p>
- <p>
- In short, the <var>E</var> specifier formats it's argument as follows:
- </p>
- <code>
- FloatToStrF(Argument,ffexponent,Precision,3)
- </code>
- </dd>
- <dt>F</dt>
- <dd>
- <p>Fixed point format. The next argument in the <var>Args</var> array
- should be a floating point value. The argument is converted to a
- decimal string, using fixed notation (see <link id="FloatToStrF"/>).
- <var>Precision</var> indicates the number of digits following the
- decimal point.
- </p>
- <p>
- In short, the <var>F</var> specifier formats it's argument as follows:
- </p>
- <code>
- FloatToStrF(Argument,ffFixed,ffixed,9999,Precision)
- </code>
- </dd>
- <dt>G</dt>
- <dd>
- <p>
- General number format. The next argument in the <var>Args</var> array
- should be a floating point value. The argument is converted to a decimal
- string using fixed point notation or scientific notation, depending on which
- gives the shortest result. <var>Precision</var> is used to determine the number
- of digits after the decimal point.
- </p>
- <p>
- In short, the <var>G</var> specifier formats it's argument as follows:
- </p>
- <code>
- FloatToStrF(Argument,ffGeneral,Precision,3)
- </code>
- </dd>
- <dt>M</dt>
- <dd>
- <p>Currency format. the next argument in the var{Args} array must
- be a floating point value. The argument is converted to a decimal string
- using currency notation. This means that fixed-point notation is used, but
- that the currency symbol is appended. If precision is specified, then
- then it overrides the <var>CurrencyDecimals</var> global variable used in the
- <link id="FloatToStrF"/>
- </p>
- <p>
- In short, the <var>M</var> specifier formats it's argument as follows:
- </p>
- <code>
- FloatToStrF(Argument,ffCurrency,9999,Precision)
- </code>
- </dd>
- <dt>N</dt>
- <dd> Number format. This is the same as fixed point format, except that
- thousand separators are inserted in the resulting string.
- </dd>
- <dt>P</dt>
- <dd> Pointer format. The next argument in the <var>Args</var> array must be a
- pointer (typed or untyped). The pointer value is converted to a string of
- length 8, representing the hexadecimal value of the pointer.
- </dd>
- <dt>S</dt>
- <dd> String format. The next argument in the <var>Args</var> array must be
- a string. The argument is simply copied to the result string. If
- <var>Precision</var> is specified, then only <var>Precision</var> characters are
- copied to the result string.
- </dd>
- <dt>X</dt>
- <dd> hexadecimal format. The next argument in the <var>Args</var> array must
- be an integer. The argument is converted to a hexadecimal string with just
- enough characters to contain the value of the integer. If <var>Precision</var>
- is specified then the resulting hexadecimal representation will have at
- least <var>Precision</var> characters in it (with a maximum value of 32).
- </dd>
- </dl>
- </descr>
- <errors>
- <p>
- In case of error, an <var>EConversionError</var> exception is raised. Possible
- errors are:
- </p>
- <ol>
- <li> Errors in the format specifiers.</li>
- <li> The next argument is not of the type needed by a specifier.</li>
- <li> The number of arguments is not sufficient for all format specifiers.</li>
- </ol>
- </errors>
- <seealso>
- <link id="FormatBuf"/>
- </seealso>
- <example file="sysutex/ex71"/>
- </element>
- <element name="FormatBuf">
- <short>Format a string with given arguments and store the result in a buffer.</short>
- <descr>
- <var>FormatBuf</var> calls formatfloat with <var>Buf</var>.
- </descr>
- <errors>
- </errors>
- <seealso>
- </seealso>
- <example file="sysutex/ex72"/>
- </element>
- <element name="FormatFloat">
- <short>Format a float according to a certain mask.</short>
- <descr>
- <p>
- <var>FormatFloat</var> formats the floating-point value given by <var>Value</var> using
- the format specifications in <var>Format</var>. The format specifier can give
- format specifications for positive, negative or zero values (separated by
- a semicolon).
- </p>
- <p>
- If the formatspecifier is empty or the value needs more than 18 digits to
- be correctly represented, the result is formatted with a call to
- <link id="FloatToStrF"/> with the <var>ffGeneral</var> format option.
- </p>
- <p>
- The following format specifiers are supported:
- </p>
- <dl>
- <dt>0</dt>
- <dd> is a digit place holder. If there is a corresponding digit in
- the value being formatted, then it replaces the 0. If not, the 0 is left
- as-is.
- </dd>
- <dt>#</dt>
- <dd> is also a digit place holder. If there is a corresponding digit in
- the value being formatted, then it replaces the #. If not, it is removed.
- by a space.
- </dd>
- <dt>.</dt>
- <dd> determines the location of the decimal point. Only the first '.'
- character is taken into account. If the value contains digits after the
- decimal point, then it is replaced by the value of the <var>DecimalSeparator</var>
- character.
- </dd>
- <dt>,</dt>
- <dd> determines the use of the thousand separator character in the
- output string. If the format string contains one or more ',' charactes,
- then thousand separators will be used. The <var>ThousandSeparator</var> character
- is used.
- </dd>
- <dt>E+</dt>
- <dd> determines the use of scientific notation. If 'E+' or 'E-' (or
- their lowercase counterparts) are present then scientific notation is used.
- The number of digits in the output string is determined by the number of
- <var>0</var> characters after the '<var>E+</var>'
- </dd>
- <dt>;</dt>
- <dd> This character separates sections for positive, negative, and zero numbers in the
- format string.
- </dd>
- </dl>
- </descr>
- <errors>
- If an error occurs, an exception is raised.
- </errors>
- <seealso>
- <link id="FloatToStr"/>
- </seealso>
- <example file="sysutex/ex89"/>
- </element>
- <element name="IntToHex">
- <short>Convert an integer value to a hexadecimal string.</short>
- <descr>
- <var>IntToHex</var> converts <var>Value</var> to a hexadecimal string
- representation. The result will contain at least <var>Digits</var>
- characters. If <var>Digits</var> is less than the needed number of characters,
- the string will NOT be truncated. If <var>Digits</var> is larger than the needed
- number of characters, the result is padded with zeroes.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="IntToStr"/>, <var>StrToInt</var>
- </seealso>
- <example file="sysutex/ex73"/>
- </element>
- <element name="IntToStr">
- <short>Convert an integer value to a decimal string.</short>
- <descr>
- <var>IntToStr</var> coverts <var>Value</var> to it's string representation.
- The resulting string has only as much characters as needed to represent
- the value. If the value is negative a minus sign is prepended to the
- string.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="IntToHex"/>
- <link id="StrToInt"/>
- </seealso>
- <example file="sysutex/ex74"/>
- </element>
- <element name="IsValidIdent">
- <short>Check whether a string is a valid identifier name.</short>
- <descr>
- <var>IsValidIdent</var> returns <var>True</var> if <var>Ident</var> can be used as a
- compoent name. It returns <var>False</var> otherwise. <var>Ident</var> must consist of
- a letter or underscore, followed by a combination of letters, numbers or
- underscores to be a valid identifier.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- </seealso>
- <example file="sysutex/ex75"/>
- </element>
- <element name="LastDelimiter">
- <short>Return the last occurrence of a set of delimiters in a string.</short>
- <descr>
- <var>LastDelimiter</var> returns the <em> last</em> occurrence of any character in
- the set <var>Delimiters</var> in the string <var>S</var>.
- </descr>
- <errors>
- </errors>
- <seealso>
- </seealso>
- <example file="sysutex/ex88"/>
- </element>
- <element name="LeftStr">
- <short>Return a number of characters starting at the left of a string.</short>
- <descr>
- <var>LeftStr</var> returns the <var>Count</var> leftmost characters of <var>S</var>.
- It is equivalent to a call to <var>Copy(S,1,Count)</var>.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="RightStr"/>
- <link id="TrimLeft"/>
- <link id="TrimRight"/>
- <link id="Trim"/>
- </seealso>
- <example file="sysutex/ex76"/>
- </element>
- <element name="LoadStr">
- <short>Load a string from the resource tables.</short>
- <descr>
- This function is not yet implemented. resources are not yet supported.
- </descr>
- <errors>
- </errors>
- <seealso>
- </seealso>
- </element>
- <element name="LowerCase">
- <short>Return a lowercase version of a string.</short>
- <descr>
- <var>LowerCase</var> returns the lowercase equivalent of <var>S</var>. Ansi characters
- are not taken into account, only ASCII codes below 127 are converted. It is
- completely equivalent to the lowercase function of the system unit, and is
- provided for compatiibility only.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="AnsiLowerCase"/>
- <link id="UpperCase"/>
- <link id="AnsiUpperCase"/>
- </seealso>
- <example file="sysutex/ex77"/>
- </element>
- <element name="NewStr">
- <short>Allocate a new ansistring on the heap.</short>
- <descr>
- <p>
- <var>NewStr</var> assigns a new dynamic string on the heap, copies <var>S</var> into
- it, and returns a pointer to the newly assigned string.
- </p>
- <p>
- This function is obsolete, and shouldn't be used any more. The
- <var>AnsiString</var> mechanism also allocates ansistrings on the heap, and
- should be preferred over this mechanism.
- </p>
- <p>
- For an example, see <link id="AssignStr"/>.
- </p>
- </descr>
- <errors>
- If not enough memory is present, an EOutOfMemory exception will be raised.
- </errors>
- <seealso>
- <link id="AssignStr"/>
- <link id="DisposeStr"/>
- </seealso>
- </element>
- <element name="QuotedStr">
- <short>Return a quotes version of a string.</short>
- <descr>
- <var>QuotedStr</var> returns the string <var>S</var>, quoted with single quotes. This means
- that <var>S</var> is enclosed in single quotes, and every single quote in <var>S</var>
- is doubled. It is equivalent to a call to <var>AnsiQuotedStr(s, '''')</var>.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="AnsiQuotedStr"/>
- <link id="AnsiExtractQuotedStr"/>.
- </seealso>
- <example file="sysutex/ex78"/>
- </element>
- <element name="RightStr">
- <short>Return a number of characters from a string, starting at the end.</short>
- <descr>
- <p>
- <var>RightStr</var> returns the <var>Count</var> rightmost characters of <var>S</var>.
- It is equivalent to a call to <var>Copy(S,Length(S)+1-Count,Count)</var>.
- </p>
- <p>
- If <var>Count</var> is larger than the actual length of <var>S</var> only the real
- length will be used.
- </p>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="LeftStr"/>
- <link id="Trim"/>
- <link id="TrimLeft"/>
- <link id="TrimRight"/>
- </seealso>
- <example file="sysutex/ex79"/>
- </element>
- <element name="StrFmt">
- <short>Format a string with given arguments, store the result in a buffer.</short>
- <descr>
- <var>StrFmt</var> will format <var>fmt</var> with <var>Args</var>, as the <link id="Format"/>
- function does, and it will store the result in <var>Buffer</var>. The function
- returns <var>Buffer</var>. <var>Buffer</var> should point to enough space to contain
- the whole result.
- </descr>
- <errors>
- for a list of errors, see <link id="Format"/>.
- </errors>
- <seealso>
- <link id="StrLFmt"/>
- <link id="FmtStr"/>
- <link id="Format"/>
- <link id="FormatBuf"/>
- </seealso>
- <example file="sysutex/ex80"/>
- </element>
- <element name="StrLFmt">
- <short>Format a string with given arguments, but with limited length.</short>
- <descr>
- <var>StrLFmt</var> will format <var>fmt</var> with <var>Args</var>, as the <link id="Format"/>
- function does, and it will store maximally <var>Maxlen characters</var> of the
- result in <var>Buffer</var>. The function returns <var>Buffer</var>. <var>Buffer</var>
- should point to enough space to contain <var>MaxLen</var> characters.
- </descr>
- <errors>
- for a list of errors, see <link id="Format"/>.
- </errors>
- <seealso>
- <link id="StrFmt"/>
- <link id="FmtStr"/>
- <link id="Format"/>
- <link id="FormatBuf"/>
- </seealso>
- <example file="sysutex/ex81"/>
- </element>
- <element name="StrToFloat">
- <short>Convert a string to a floating-point value.</short>
- <descr>
- <var>StrToFloat</var> converts the string <var>S</var> to a floating point value.
- <var>S</var> should contain a valid stroing representation of a floating point
- value (either in decimal or scientific notation). If the string
- contains a decimal value, then the decimal separator character can either be
- a '.' or the value of the <var>DecimalSeparator</var> variable.
- </descr>
- <errors>
- If the string <var>S</var> doesn't contain a valid floating point string, then an
- exception will be raised.
- </errors>
- <seealso>
- <link id="TextToFloat"/>
- <link id="FloatToStr"/>
- <link id="FormatFloat"/>
- <link id="StrToInt"/>
- </seealso>
- <example file="sysutex/ex90"/>
- </element>
- <element name="StrToInt">
- <short>Convert a string to an integer value.</short>
- <descr>
- <p>
- <var>StrToInt</var> will convert the string <var>S</var>to an integer.
- If the string contains invalid characters or has an invalid format,
- then an <var>EConvertError</var> is raised.
- </p>
- <p>
- To be successfully converted, a string can contain a combination
- of <var>numerical</var> characters, possibly preceded by a minus sign (<var>-</var>).
- Spaces are not allowed.
- </p>
- </descr>
- <errors>
- In case of error, an <var>EConvertError</var> is raised.
- </errors>
- <seealso>
- <link id="IntToStr"/>
- <link id="StrToIntDef"/>
- </seealso>
- <example file="sysutex/ex82"/>
- </element>
- <element name="StrToIntDef">
- <short>Convert a string to an integer value, with a default value.</short>
- <descr>
- <p>
- <var>StrToIntDef</var> will convert a string to an integer. If the string contains
- invalid characters or has an invalid format, then <var>Default</var> is returned.
- </p>
- <p>
- To be successfully converted, a string can contain a combination of
- <var>numerical</var> characters, possibly preceded by a minus sign (<var>-</var>).
- Spaces are not allowed.
- </p>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="IntToStr"/>
- <link id="StrToInt"/>
- </seealso>
- <example file="sysutex/ex83"/>
- </element>
- <element name="TextToFloat">
- <short>Convert a buffer to a float value.</short>
- <descr>
- <p>
- <var>TextToFloat</var> converts the string in <var>Buffer</var> to a floating point
- value. <var>Buffer</var> should contain a valid stroing representation of a
- floating point value (either in decimal or scientific notation).
- If the buffer contains a decimal value, then the decimal separator
- character can either be a '.' or the value of the <var>DecimalSeparator</var>
- variable.
- </p>
- <p>
- The function returns <var>True</var> if the conversion was successful.
- </p>
- </descr>
- <errors>
- If there is an invalid character in the buffer, then the function returns
- <var>False</var>
- </errors>
- <seealso>
- <link id="StrToFloat"/>
- <link id="FloatToStr"/>
- <link id="FormatFloat"/>
- </seealso>
- <example file="sysutex/ex91"/>
- </element>
- <element name="Trim">
- <short>Trim whitespace from the ends of a string.</short>
- <descr>
- <p>
- <var>Trim</var> strips blank characters (spaces) at the beginning and end of <var>S</var>
- and returns the resulting string. Only <var>#32</var> characters are stripped.
- </p>
- <p>
- If the string contains only spaces, an empty string is returned.
- </p>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="TrimLeft"/>
- <link id="TrimRight"/>
- </seealso>
- <example file="sysutex/ex84"/>
- </element>
- <element name="TrimLeft">
- <short>Trim whitespace from the beginning of a string.</short>
- <descr>
- <var>TrimLeft</var> strips blank characters (spaces) at the beginning of <var>S</var>
- and returns the resulting string. Only <var>#32</var> characters are stripped.
- If the string contains only spaces, an empty string is returned.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="Trim"/>
- <link id="TrimRight"/>
- </seealso>
- <example file="sysutex/ex85"/>
- </element>
- <element name="TrimRight">
- <short>Trim whitespace from the end of a string.</short>
- <descr>
- <var>Trim</var> strips blank characters (spaces) at the end of <var>S</var>
- and returns the resulting string. Only <var>#32</var> characters are stripped.
- If the string contains only spaces, an empty string is returned.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="Trim"/>
- <link id="TrimLeft"/>
- </seealso>
- <example file="sysutex/ex86"/>
- </element>
- <element name="UpperCase">
- <short>Return an uppercase version of a string.</short>
- <descr>
- <var>UpperCase</var> returns the uppercase equivalent of <var>S</var>. Ansi characters
- are not taken into account, only ASCII codes below 127 are converted. It is
- completely equivalent to the <var>UpCase</var> function of the system unit, and is
- provided for compatiibility only.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="AnsiLowerCase"/>
- <link id="LowerCase"/>
- <link id="AnsiUpperCase"/>
- </seealso>
- <example file="sysutex/ex87"/>
- </element>
- <element name="Unix">
- <short>Unix unit.</short>
- </element>
- <element name="errors">
- <short>Error descriptions.</short>
- </element>
- <element name="sysconst">
- <short>Error and other message strings.</short>
- </element>
- <element name="GetLastOSError">
- <short>Return the last code from the OS.</short>
- <descr>
- <p>
- <var>GetLastOSError</var> returns the error code from the last operating
- system call. It does not reset this code. In general, it should be called
- when an operating system call reported an error condition. In that case,
- <var>GetLastOSError</var> gives extended information about the error.
- </p>
- <p>
- No assumptions should be made about the resetting of the error code by
- subsequent OS calls. This may be platform dependent.
- </p>
- </descr>
- <seealso>
- <link id="RaiseLastOSError"/>
- </seealso>
- </element>
- <!-- procedure Visibility: default -->
- <element name="RaiseLastOSError">
- <short>Raise an exception with the last Operating System error code.</short>
- <descr>
- <var>RaiseLastOSError</var> raises an <link id="EOSError"/> exception with
- the error code returned by <var>GetLastOSError</var>. If the Error code is
- nonzero, then the corresponding error message will be returned. If the error
- code is zero, a standard message will be returned.
- </descr>
- <errors>
- This procedure may not be implemented on all platforms. If it is not, then a
- normal <link id="Exception"/> will be raised.
- </errors>
- <seealso>
- <link id="EOSError"/>
- <link id="GetLastOSError"/>
- <link id="Exception"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="GetEnvironmentVariable">
- <short>Return the value of an environment variable.</short>
- <descr>
- <p>
- <var>GetEnvironmentVariable</var> returns the value of the <var>EnvVar</var>
- environment variable. If the specified variable does not exist or
- <var>EnvVar</var> is empty, an empty string is returned.
- </p>
- </descr>
- <seealso>
- <link id="GetEnvironmentString"/>
- <link id="GetEnvironmentVariableCount"/>
- <example file="sysutex/ex93"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="GetEnvironmentVariableCount">
- <short>Return the number of variables in the environment.</short>
- <descr>
- <p>
- <var>GetEnvironmentVariableCount</var> returns the number of variables in
- the environment. The number is 1 based, but the result may be zero if there
- are no environment variables.
- </p>
- </descr>
- <errors>
- If there is no environment, -1 may be returned.
- </errors>
- <seealso>
- <link id="GetEnvironmentString"/>
- <link id="GetEnvironmentVariable"/>
- </seealso>
- <example file="sysutex/ex92"/>
- </element>
- <element name="GetEnvironmentString">
- <short>Return an environment variable by index.</short>
- <descr>
- <p>
- <var>GetEnvironmentString</var> returns the <var>Index</var>-th environment
- variable. The index is 1 based, and is bounded from above by the result of <link
- id="GetEnvironmentVariableCount"/>.
- </p>
- <p>
- For an example, <link id="GetEnvironmentVariableCount"/>.
- </p>
- </descr>
- <errors>
- If there is no environment, -1 may be returned.
- </errors>
- <seealso>
- <link id="GetEnvironmentVariable"/>
- <link id="GetEnvironmentVariableCount"/>
- </seealso>
- </element>
- <!-- procedure Visibility: default -->
- <element name="Sleep">
- <short>Suspend execution of a program for a certain time.</short>
- <descr>
- <p>
- <var>Sleep</var> suspends the execution of the program for
- the specified number of milliseconds (<var>milliseconds</var>).
- After the specified period has expired, program execution resumes.
- </p>
- <remark>The indicated time is not exact, i.e. it is a minimum time. No
- guarantees are made as to the exact duration of the suspension.
- </remark>
- </descr>
- </element>
- <!-- function Visibility: default -->
- <element name="ExecuteProcess">
- <short>Execute another process (program).</short>
- <descr>
- <var>ExecuteProcess</var> will execute the program in <var>Path</var>,
- passing it the arguments in <var>ComLine</var>. <var>ExecuteProcess</var>
- will then wait for the program to finish, and will return the exit code of
- the executed program. In case <var>ComLine</var> is a single string, it will
- be split out in an array of strings, taking into account common whitespace
- and quote rules.
- </descr>
- <errors>
- In case the program could not be executed or an other error occurs,
- an <link id="EOSError"/> exception will be raised.
- </errors>
- <seealso>
- <link id="EOSError"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="GetAppConfigDir">
- <short>Return the appropriate directory for the application's configuration files.</short>
- <descr>
- <p>
- <var>GetAppConfigDir</var> returns the name of a directory in which the
- application should store its configuration files on the current OS.
- If the parameter <var>Global</var> is <var>True</var> then the directory
- returned is a global
- directory, i.e. valid for all users on the system. If the parameter
- <var>Global</var> is false, then the directory is specific for the user who
- is executing the program. On systems that do not support multi-user
- environments, these two directories may be the same.
- </p>
- <p>
- The directory which is returned is the name of the directory where the application is
- supposed to store files. This does not mean that the directory exists, or
- that the user can write in this directory (especially if
- <var>Global</var>=<var>True</var>). It just returns the name of the
- appropriate location.
- </p>
- <p>
- On systems where the operating system provides a call to determine this
- location, this call will be used. On systems where there is no such call,
- an algorithm is used which reflects common practice on that system.
- </p>
- <p>
- The application name is deduced from the binary name via the <link id="ApplicationName"/>
- call, but can be configured by means of the <link id="OnGetApplicationName"/> callback.
- </p>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="GetAppConfigFile"/>
- <link id="ApplicationName"/>
- <link id="OnGetApplicationName"/>
- <link id="CreateDir"/>
- <link id="SysConfigDir"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="GetAppConfigFile">
- <short>Return an appropriate name for an application configuration file.</short>
- <descr>
- <p>
- <var>GetAppConfigFile</var> returns the name of a file in which the
- application can store its configuration parameters. The <var>Global</var>
- parameter determines whether it is a global configuration file
- (value <var>True</var>) or a personal configuration file (value
- <var>False</var>). The parameter <var>SubDir</var>, in case it is set to
- <var>True</var>, will insert the name of a
- directory before the filename. This can be used in case the application
- needs to store other data than configuration data in an application-specific
- directory. Default behaviour is to set this to <var>False</var>.
- </p>
- <p>
- No assumptions should be made about the existence or writeability of this
- file, or the directory where the file should reside.
- </p>
- <p>
- On systems where the operating system provides a call to determine the
- location of configuration files, this call will be used. On systems
- where there is no such call, an algorithm is used which reflects common
- practice on that system.
- </p>
- <p>
- The application name is deduced from the binary name via the <link id="ApplicationName"/>
- call, but can be configured by means of the <link id="OnGetApplicationName"/> callback.
- </p>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="GetAppConfigDir"/>
- <link id="OnGetApplicationName"/>
- <link id="ApplicationName"/>
- <link id="CreateDir"/>
- <link id="ConfigExtension"/>
- <link id="SysConfigDir"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="ApplicationName">
- <short>Return a default application name</short>
- <descr>
- <var>ApplicationName</var> returns the name of the current application.
- Standard this is equal to the result of <var>ParamStr(0)</var>, but it can
- be customized by setting the <link id="OnGetApplicationName"/> callback.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="GetAppConfigDir"/>
- <link id="OnGetApplicationName"/>
- <link id="GetAppConfigFile"/>
- <link id="ConfigExtension"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="ConfigExtension">
- <short>Default application configuration file extension.</short>
- <descr>
- <var>ConfigExtension</var> is the default extension used by the
- <link id="GetAppConfigFile"/> call. It can be set to any valid extension for
- the current OS.
- </descr>
- <errors>
- </errors>
- <seealso>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="SysConfigDir">
- <short>System configuration directory.</short>
- <descr>
- <p>
- <var>SysConfigDir</var> is the default system configuration directory. It is
- set at application startup by the <file>sysutils</file> initialization
- routines.
- </p>
- <p>
- This directory may be returned by the <link id="GetAppConfigDir"/> call on
- some systems.
- </p>
- </descr>
- <errors>
- </errors>
- <seealso>
- <link id="GetAppConfigDir"/>
- </seealso>
- </element>
- <!-- function type Visibility: default -->
- <element name="TGetAppNameEvent">
- <short>Callback type to get customized application name.</short>
- <descr>
- This callback type is used by the <link id="OnGetApplicationName"/> to
- return an alternative application name.
- </descr>
- <errors>
- </errors>
- <seealso>
- </seealso>
- </element>
- <!-- variable Visibility: default -->
- <element name="OnGetApplicationName">
- <short>Callback to get a customized application name.</short>
- <descr>
- <p>
- By default, the configuration file routines <link id="GetAppConfigDir"/> and
- <link id="GetAppConfigFile"/> use a default application name to construct a
- directory or filename. This callback can be used to provide an alternative
- application name.
- </p>
- <p>
- Since the result of this callback will be used to construct a filename, care
- should be taken that the returned name does not contain directory separator
- characters or characters that cannot appear in a filename.
- </p>
- </descr>
- <errors>
- </errors>
- <seealso>
- <link id="TGetAppNameEvent"/>
- <link id="ApplicationName"/>
- <link id="GetAppConfigDir"/>
- <link id="GetAppConfigFile"/>
- </seealso>
- </element>
- <!-- pointer type Visibility: default -->
- <element name="PDayTable">
- <short>Pointer to TDayTable type.</short>
- </element>
- <!-- array type Visibility: default -->
- <element name="TDayTable">
- <short>Array of day names.</short>
- </element>
- <!-- constant Visibility: default -->
- <element name="HoursPerDay">
- <short>Number of hours in a day.</short>
- </element>
- <!-- constant Visibility: default -->
- <element name="MinsPerHour">
- <short>Number of minutes per hour.</short>
- </element>
- <!-- constant Visibility: default -->
- <element name="SecsPerMin">
- <short>Number of seconds per minute</short>
- </element>
- <!-- constant Visibility: default -->
- <element name="MSecsPerSec">
- <short>Number of milliseconds per second</short>
- </element>
- <!-- constant Visibility: default -->
- <element name="MinsPerDay">
- <short>Number of minutes per day.</short>
- </element>
- <!-- constant Visibility: default -->
- <element name="SecsPerDay">
- <short>Number of seconds per day</short>
- </element>
- <!-- constant Visibility: default -->
- <element name="MSecsPerDay">
- <short>Number of milliseconds per day</short>
- </element>
- <!-- constant Visibility: default -->
- <element name="DateDelta">
- <short>Days between 1/1/0001 and 12/31/1899</short>
- </element>
- <!-- constant Visibility: default -->
- <element name="UnixDateDelta">
- <short>Number of days between 1.1.1900 and 1.1.1970</short>
- </element>
- <!-- constant Visibility: default -->
- <element name="MonthDays">
- <short>Array with number of days in the months for leap and non-leap years.</short>
- </element>
- <!-- constant Visibility: default -->
- <element name="TwoDigitYearCenturyWindow">
- <short>Window to determine what century 2 digit years are in.</short>
- </element>
- <!-- record type Visibility: default -->
- <element name="TSystemTime">
- <short>System time structure</short>
- <descr>The System time structure contains the date/time in a
- human-understandable format.
- </descr>
- </element>
- <!-- variable Visibility: default -->
- <element name="TSystemTime.Year">
- <short>Year part</short>
- </element>
- <!-- variable Visibility: default -->
- <element name="TSystemTime.Month">
- <short>Month part</short>
- </element>
- <!-- variable Visibility: default -->
- <element name="TSystemTime.Day">
- <short>Day of month part</short>
- </element>
- <!-- variable Visibility: default -->
- <element name="TSystemTime.Hour">
- <short>Hour of the day</short>
- </element>
- <!-- variable Visibility: default -->
- <element name="TSystemTime.Minute">
- <short>Minute of the hour</short>
- </element>
- <!-- variable Visibility: default -->
- <element name="TSystemTime.Second">
- <short>Second of the minute</short>
- </element>
- <!-- variable Visibility: default -->
- <element name="TSystemTime.MilliSecond">
- <short>Milliseconds in the second</short>
- </element>
- <!-- record type Visibility: default -->
- <element name="TTimeStamp">
- <short>TimeStamp structure</short>
- <descr>
- <var>TTimeStamp</var> contains a timestamp, with the date and time parts
- specified as separate <var>TDateTime</var> values.
- </descr>
- </element>
- <!-- variable Visibility: default -->
- <element name="TTimeStamp.Time">
- <short>Time part</short>
- </element>
- <!-- variable Visibility: default -->
- <element name="TTimeStamp.Date">
- <short>Date part</short>
- </element>
- <!-- function Visibility: default -->
- <element name="TryEncodeDate">
- <short>Try to encode a date, and indicate success.</short>
- <descr>
- <var>TryEncodeDate</var> will check the validity of the <var>Year</var>,
- <var>Month</var> and <var>Day</var> arguments, and if they are all valid,
- then they will be encoded as a <var>TDateTime</var> value and returned in
- <var>D</var>. The function will return <var>True</var> in this case. If an
- inbvalid argument is passed, then <var>False</var> will be returned.
- </descr>
- <errors>
- None. If an error occurs during the encoding, <var>False</var> is returned.
- </errors>
- <seealso>
- <link id="EncodeDate"/>
- <link id="DecodeDateFully"/>
- <link id="DecodeDate"/>
- <link id="TryEncodeTime"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="TryEncodeTime">
- <short>Try to encode a time, and indicate success.</short>
- <descr>
- <var>TryEncodeTime</var> will check the validity of the <var>Hour</var>,
- <var>Min</var>, <var>Sec</var> and <var>MSec</var> arguments, and will
- encode them in a <var>TDateTime</var> value which is returned in
- <var>T</var>. If the arguments are valid, then <var>True</var> is returned,
- otherwise <var>False</var> is returned.
- </descr>
- <errors>
- None. If an error occurs during the encoding, <var>False</var> is returned.
- </errors>
- <seealso>
- <link id="EncodeTime"/>
- <link id="DecodeTime"/>
- <link id="TryEncodeDate"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="DecodeDateFully">
- <short>Decode a date with additional date of the week.</short>
- <descr>
- <var>DecodeDateFully</var>, like <link id="DecodeDate"/>, decodes
- <var>DateTime</var> in its parts and returns these in <var>Year</var>,
- <var>Month</var>, <var>Day</var> but in addition returns the day of
- the week in <var>DOW</var>.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="EncodeDate"/>
- <link id="TryEncodeDate"/>
- <link id="DecodeDate"/>
- </seealso>
- </element>
- <!-- procedure Visibility: default -->
- <element name="GetLocalTime">
- <short>Get the local time.</short>
- <descr>
- <var>GetLocalTime</var> returns the system time in a <link id="TSystemTime"/>
- format.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="Now"/>
- <link id="Date"/>
- <link id="Time"/>
- <link id="TSystemTime"/>
- </seealso>
- </element>
- <!-- pointer type Visibility: default -->
- <element name="PString">
- <short>Pointer to a ansistring</short>
- </element>
- <!-- enumeration type Visibility: default -->
- <element name="TFloatFormat">
- <short>Formats for the FloatToText function.</short>
- <descr>
- <var>TFloatFormat</var> is used to determine how a float value should be
- formatted in the <link id="FloatToText"/> function.
- </descr>
- <seealso>
- <link id="FloatToText"/>
- <link id="FloatToStrF"/>
- </seealso>
- </element>
- <!-- enumeration value Visibility: default -->
- <element name="TFloatFormat.ffGeneral">
- <short>General number format.</short>
- </element>
- <!-- enumeration value Visibility: default -->
- <element name="TFloatFormat.ffExponent">
- <short>Scientific format.</short>
- </element>
- <!-- enumeration value Visibility: default -->
- <element name="TFloatFormat.ffFixed">
- <short>Fixed point format.</short>
- </element>
- <!-- enumeration value Visibility: default -->
- <element name="TFloatFormat.ffNumber">
- <short>Fixed point format with thousand separatord</short>
- </element>
- <!-- enumeration value Visibility: default -->
- <element name="TFloatFormat.ffCurrency">
- <short>Monetary format.</short>
- </element>
- <!-- enumeration type Visibility: default -->
- <element name="TFloatValue">
- <short>Type of float to return in the buffer for TextToFloat.</short>
- <descr>
- <var>TFloatValue</var> determines which kind of value should be returned in
- the (untyped) buffer used by the <link id="TextToFloat"/> function.
- </descr>
- <seealso>
- <link id="TextToFloat"/>
- </seealso>
- </element>
- <!-- enumeration value Visibility: default -->
- <element name="TFloatValue.fvExtended">
- <short>Extended value</short>
- </element>
- <!-- enumeration value Visibility: default -->
- <element name="TFloatValue.fvCurrency">
- <short>Currency value</short>
- </element>
- <!-- enumeration value Visibility: default -->
- <element name="TFloatValue.fvSingle">
- <short>Single value</short>
- </element>
- <!-- enumeration value Visibility: default -->
- <element name="TFloatValue.fvReal">
- <short>Real value</short>
- </element>
- <!-- enumeration value Visibility: default -->
- <element name="TFloatValue.fvDouble">
- <short>Double value</short>
- </element>
- <!-- enumeration value Visibility: default -->
- <element name="TFloatValue.fvComp">
- <short>Comp value</short>
- </element>
- <!-- set type Visibility: default -->
- <element name="TReplaceFlags">
- <short>Flags for StringReplace function</short>
- <descr>
- <var>TReplaceFlags</var> determines the behaviour of the
- <link id="StringReplace"/> function.
- </descr>
- <seealso>
- <link id="StringReplace"/>.
- </seealso>
- </element>
- <!-- enumeration value Visibility: default -->
- <element name="TReplaceFlags.rfReplaceAll">
- <short>Replace all occurrences of the search string with the replacement string.</short>
- </element>
- <!-- enumeration value Visibility: default -->
- <element name="TReplaceFlags.rfIgnoreCase">
- <short>Search case insensitive.</short>
- </element>
- <!-- record type Visibility: default -->
- <element name="TFloatRec">
- <short>Record descriing a float value</short>
- <descr>
- <var>TFloatRec</var> is used to descibe a floating point value by the
- <link id="FloatToDecimal"/> function.
- </descr>
- <seealso>
- <link id="FloatToDecimal"/>
- </seealso>
- </element>
- <!-- variable Visibility: default -->
- <element name="TFloatRec.Exponent">
- <short>Exponent part</short>
- </element>
- <!-- variable Visibility: default -->
- <element name="TFloatRec.Negative">
- <short>Sign part</short>
- </element>
- <!-- variable Visibility: default -->
- <element name="TFloatRec.Digits">
- <short>Digits of fraction</short>
- </element>
- <!-- constant Visibility: default -->
- <element name="MinDateTime">
- <short>Minimum <var>TDateTime</var> value.</short>
- </element>
- <!-- constant Visibility: default -->
- <element name="MaxDateTime">
- <short>Maximum <var>TDateTime</var> value.</short>
- </element>
- <!-- constant Visibility: default -->
- <element name="MinCurrency">
- <short>Minimum Currency value</short>
- </element>
- <!-- constant Visibility: default -->
- <element name="MaxCurrency">
- <short>Maximum currency value</short>
- </element>
- <!-- enumeration type Visibility: default -->
- <element name="TTextLineBreakStyle">
- <short>Line break style</short>
- <descr>
- <var>TTextLineBreakStyle</var> describes the style of linebreaks to be used
- in the <link id="AdjustLineBreaks"/> function.
- </descr>
- <seealso>
- <link id="AdjustLineBreaks"/>
- </seealso>
- </element>
- <!-- enumeration value Visibility: default -->
- <element name="TTextLineBreakStyle.tlbsLF">
- <short>Linefeed only</short>
- </element>
- <element name="TTextLineBreakStyle.tlbsCR">
- <short>Carriage-return only</short>
- </element>
- <!-- enumeration value Visibility: default -->
- <element name="TTextLineBreakStyle.tlbsCRLF">
- <short>Carriage-return and linefeed characters</short>
- </element>
- <!-- constant Visibility: default -->
- <element name="DefaultTextLineBreakStyle">
- <short>Default line break style for the current platform.</short>
- </element>
- <!-- constant Visibility: default -->
- <element name="LeadBytes">
- <short>Lead bytes in Multi-Byte character sets</short>
- <descr>
- <var>LeadBytes</var> contains the set of bytes that serve as lead byte in a
- MBCS string.
- </descr>
- </element>
- <!-- constant Visibility: default -->
- <element name="EmptyStr">
- <short>Empty String Constant</short>
- </element>
- <!-- constant Visibility: default -->
- <element name="NullStr">
- <short>Pointer to an empty string</short>
- </element>
- <!-- constant Visibility: default -->
- <element name="EmptyWideStr">
- <short>Empty wide string.</short>
- </element>
- <!-- function Visibility: default -->
- <element name="CompareMemRange">
- <short>Compare 2 memory locations</short>
- <descr>
- <p>
- <var>CompareMemRange</var> compares the 2 memory locations pointed to by
- <var>P1</var> and <var>P2</var> byte per byte. It stops comparing after
- <var>Length</var> bytes have been compared, or when it has encountered 2
- different bytes. The result is then
- </p>
- <dl>
- <dt>>0</dt><dd> if a byte in range <var>P1</var> was found that is bigger than the
- corresponding byte in range <var>P2</var>.</dd>
- <dt>0</dt><dd> if all bytes in range <var>P1</var> are the same as the corresponding
- bytes in range <var>P2</var>.</dd>
- <dt><0</dt><dd> if a byte in range <var>P1</var> was found that is less than the
- corresponding byte in range <var>P2</var>.</dd>
- </dl>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="SameText"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="SameText">
- <short>Checks whether 2 strings are the same (case insensitive)</short>
- <descr>
- <var>SameText</var> calls <link id="CompareText"/> with <var>S1</var> and
- <var>S2</var> as parameters and returns <var>True</var> if the result of
- that call is zero, or <var>False</var> otherwise.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="CompareText"/>
- <link id="AnsiSameText"/>
- <link id="AnsiSameStr"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="AnsiSameText">
- <short>Checks whether 2 strings are the same (case insensitive)</short>
- <descr>
- <var>SameText</var> calls <link id="AnsiCompareText"/> with <var>S1</var> and
- <var>S2</var> as parameters and returns <var>True</var> if the result of
- that call is zero, or <var>False</var> otherwise.
- </descr>
- <errors>
- </errors>
- <seealso>
- <link id="AnsiCompareText"/>
- <link id="SameText"/>
- <link id="AnsiSameStr"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="AnsiSameStr">
- <short>Checks whether 2 strings are the same (case sensitive)</short>
- <descr>
- <var>SameText</var> calls <link id="AnsiCompareStr"/> with <var>S1</var> and
- <var>S2</var> as parameters and returns <var>True</var> if the result of
- that call is zero, or <var>False</var> otherwise.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="AnsiCompareStr"/>
- <link id="SameText"/>
- <link id="AnsiSameText"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="AnsiStrLComp">
- <short>Compare a limited number of characters of 2 strings</short>
- <descr>
- <var>AnsiStrLComp</var> functions the same as <link id="AnsiStrComp"/>, but
- compares at most <var>MaxLen</var> characters, if this is less than one of
- the lengths of the passed strings. If the first <var>MaxLen</var> characters
- in both strings are the same, then zero is returned.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="AnsiStrComp"/>
- <link id="AnsiStrIComp"/>
- <link id="AnsiStrLIComp"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="TryStrToInt">
- <short>Try to convert a string to an integer, and report on success.</short>
- <descr>
- <var>TryStrToInt</var> tries to convert the string <var>S</var> to an
- integer, and returns <var>True</var> if this was succesful. In that case the
- converted integer is returned in <var>I</var>. If the conversion failed,
- (an invalid string, or the value is out of range) then <var>False</var> is returned.
- </descr>
- <errors>
- None. On error, <var>False</var> is returned.
- </errors>
- <seealso>
- <link id="StrToInt"/>
- <link id="TryStrToInt64"/>
- <link id="StrToIntDef"/>
- <link id="StrToInt64"/>
- <link id="StrToInt64Def"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="StrToInt64">
- <short>Convert a string to an Int64 value.</short>
- <descr>
- <p>
- <var>StrToInt64</var> converts the string <var>S</var> to a Int64 value, and
- returns this value. The string can only contain numerical characters, and
- optionally a minus sign as the first character. Whitespace is not allowed.
- </p>
- <p>
- Hexadecimal values (starting with the $ character) are supported.
- </p>
- </descr>
- <errors>
- On error, a <link id="EConvertError"/> exception is raised.
- </errors>
- <seealso>
- <link id="TryStrToInt64"/>
- <link id="StrToInt64Def"/>
- <link id="StrToInt"/>
- <link id="TryStrToInt"/>
- <link id="StrToIntDef"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="TryStrToInt64">
- <short>Try to convert a string to an int64 value, and report on success.</short>
- <descr>
- <p>
- <var>TryStrToInt64</var> tries to convert the string <var>S</var> to a Int64 value, and
- returns this value in <var>I</var> if successful. If the conversion was
- succesful, the function result is <var>True</var>, or <var>False</var>
- otherwise.
- The string can only contain numerical characters, and
- optionally a minus sign as the first character. Whitespace is not allowed.
- </p>
- <p>
- Hexadecimal values (starting with the $ character) are supported.
- </p>
- </descr>
- <errors>
- None. On error, <var>False</var> is returned.
- </errors>
- <seealso>
- <link id="StrToInt64"/>
- <link id="StrToInt64Def"/>
- <link id="StrToInt"/>
- <link id="TryStrToInt"/>
- <link id="StrToIntDef"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="StrToInt64Def">
- <short>Convert a string to an Int64 value, with a default value</short>
- <descr>
- <var>StrToInt64Def</var> tries to convert the string <var>S</var> to a Int64
- value, and returns this value. If the conversion fails for some reason, the
- value <var>Default</var> is returned instead.
- </descr>
- <errors>
- None. On error, the <var>Default</var> value is returned.
- </errors>
- <seealso>
- <link id="StrToInt64"/>
- <link id="TryStrToInt64"/>
- <link id="StrToInt"/>
- <link id="TryStrToInt"/>
- <link id="StrToIntDef"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="StrToFloatDef">
- <short>Convert a string to a float, with a default value.</short>
- <descr>
- <var>StrToFloatDef</var> tries to convert the string <var>S</var> to a
- floating point value, and returns this value. If the conversion fails for
- some reason, the value <var>Default</var> is returned instead.
- </descr>
- <errors>
- None. On error, the <var>Default</var> value is returned.
- </errors>
- <seealso>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="FloatToDateTime">
- <short>Convert a float to a <var>TDateTime</var> value.</short>
- <descr>
- <var>FloatToDateTime</var> converts the <var>Value</var> floating point
- value to a <var>TDateTime</var> value. It checks whether <var>Value</var> is
- in the valid range of dates (determined by <link id="MinDateTime"/> and
- <link id="MaxDateTime"/>). If not, an <link id="EConvertError"/> exception
- is raised.
- </descr>
- <errors>
- If <var>Value</var> is out of range, an <link id="EConvertError"/> exception
- is raised.
- </errors>
- <seealso>
- <link id="EConvertError"/>
- <link id="MinDateTime"/>
- <link id="MaxDateTime"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="FloattoCurr">
- <short>Convert a float to a Currency value.</short>
- <descr>
- <var>FloatToCurr</var> converts the <var>Value</var> floating point
- value to a <var>Currency</var> value. It checks whether <var>Value</var> is
- in the valid range of currencies (determined by <link id="MinCurrency"/> and
- <link id="MaxCurrency"/>). If not, an <link id="EConvertError"/> exception
- is raised.
- </descr>
- <errors>
- If <var>Value</var> is out of range, an <link id="EConvertError"/> exception
- is raised.
- </errors>
- <seealso>
- <link id="EConvertError"/>
- <link id="TryFloatToCurr"/>
- <link id="MinCurrency"/>
- <link id="MaxCurrency"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="TryFloatToCurr">
- <short>Try to convert a float value to a currency value and report on success.</short>
- <descr>
- <var>TryFloatToCurr</var> tries convert the <var>Value</var> floating point
- value to a <var>Currency</var> value. If successful, the function returns
- <var>True</var> and the resulting currency value is returned in
- <var>AResult</var>. It checks whether <var>Value</var> is
- in the valid range of currencies (determined by <link id="MinCurrency"/> and
- <link id="MaxCurrency"/>). If not, <var>False</var> is returned.
- </descr>
- <errors>
- If <var>Value</var> is out of range, <var>False</var> is returned.
- </errors>
- <seealso>
- <link id="FloatToCurr"/>
- <link id="MinCurrency"/>
- <link id="MaxCurrency"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="CurrToStr">
- <short>Convert a currency value to a string.</short>
- <descr>
- <p>
- <var>CurrToStr</var> will convert a currency value to a string with a
- maximum of 15 digits, and precision 2. Calling <var>CurrToStr</var>
- is equivalent to calling <link id="FloatToStrF"/>:
- </p>
- <code>
- FloatToStrF(Value,ffNumber,15,2);
- </code>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="FloatToStrF"/>
- <link id="StrToCurr"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="StrToCurr">
- <short>Convert a string to a currency value</short>
- <descr>
- <var>StrToCurr</var> converts a string to a currency value and returns the
- value. The string
- should contain a valid currency amount, without currency symbol. If the
- conversion fails, an <link id="EConvertError"/> exception is raised.
- </descr>
- <errors>
- On error, an <link id="EConvertError"/> exception is raised.
- </errors>
- <seealso>
- <link id="CurrToStr"/>
- <link id="StrToCurrDef"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="StrToCurrDef">
- <short>Convert a string to a currency value, using a default value</short>
- <descr>
- <var>StrToCurrDef</var> converts a string to a currency value and returns the
- value. The string should contain a valid currency amount, without currency
- symbol. If the conversion fails, the fallback <var>Default</var> value is returned.
- </descr>
- <errors>
- On error, the <var>Default</var> value is returned.
- </errors>
- <seealso>
- <link id="CurrToStr"/>
- <link id="StrToCurr"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="StrToBool">
- <short>Convert a string to a boolean value</short>
- <descr>
- <var>StrToBool</var> will convert the string <var>S</var> to a boolean
- value. The string <var>S</var> can contain one of <var>'True'</var>,
- <var>'False'</var> (case is ignored) or a numerical value. If it contains a
- numerical value, 0 is converted to <var>False</var>, all other values result
- in <var>True</var>. If the string <var>S</var> contains no valid boolean,
- then an <link id="EConvertError"/> exception is raised.
- </descr>
- <errors>
- On error, an <link id="EConvertError"/> exception is raised.
- </errors>
- <seealso>
- <link id="BoolToStr"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="BoolToStr">
- <short>Convert a boolean value to a string.</short>
- <descr>
- <var>BoolToStr</var> converts the boolean <var>B</var> to one of
- the strings <var>'TRUE'</var> or <var>'FALSE'</var>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="StrToBool"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="StringReplace">
- <short>Replace occurrences of one substring with another in a string.</short>
- <descr>
- <var>StringReplace</var> searches the string <var>S</var> for
- occurrences of the string <var>OldPattern</var> and, if it is found,
- replaces it with <var>NewPattern</var>. It returns the resulting string. The
- behaviour of <var>StringReplace</var> can be runed with <var>Flags</var>,
- which is of type <link id="TReplaceFlags"/>. Standard behaviour is to
- replace only the first occurrence of <var>OldPattern</var>, and to search
- case sensitively.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="TReplaceFlags"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="FloatToTextFmt">
- <short>Convert a float value to a string using a given mask.</short>
- <descr>
- <p>
- <var>FloatToTextFmt</var> returns a textual representation of
- <var>Value</var> in the memory location pointed to by <var>Buffer</var>. it
- uses the formatting specification in <var>Format</var> to do this. The
- return value is the number of characters that were written in the buffer.
- </p>
- <p>
- For a list of valid formatting characters, see <link id="FormatFloat"/>
- </p>
- </descr>
- <errors>
- No length checking is performed on the buffer. The buffer should point to
- enough memory to hold the complete string. If this is not the case, an
- access violation may occur.
- </errors>
- <seealso>
- <link id="FormatFloat"/>
- </seealso>
- </element>
- <!-- procedure Visibility: default -->
- <element name="FloatToDecimal">
- <short>Convert a float value to a <var>TFloatRec</var> value.</short>
- <descr>
- <var>FloatToDecimal</var> converts the float <var>Value</var> to a
- float description in the <var>Result</var> <link id="TFloatRec"/> format.
- It will store <var>Precision</var> digits in the <var>Digits</var> field, of
- which at most <var>Decimal</var> decimals.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="TFloatRec"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="IsDelimiter">
- <short>Check whether a given string is a delimiter character.</short>
- <descr>
- <var>IsDelimiter</var> checks whether the <var>Index</var>-th character in the
- string <var>S</var> is a delimiter character as passed in
- <var>Delimiters</var>. If <var>Index</var> is out of range, <var>False</var>
- is returned.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="LastDelimiter"/>
- </seealso>
- </element>
- <!-- enumeration type Visibility: default -->
- <element name="TMbcsByteType">
- <short>Type of multi-byte character set.</short>
- <descr>
- </descr>
- <errors>
- </errors>
- <seealso>
- </seealso>
- </element>
- <!-- enumeration value Visibility: default -->
- <element name="TMbcsByteType.mbSingleByte">
- <short>Single bytes</short>
- </element>
- <!-- enumeration value Visibility: default -->
- <element name="TMbcsByteType.mbLeadByte">
- <short>Uses lead-byte</short>
- </element>
- <!-- enumeration value Visibility: default -->
- <element name="TMbcsByteType.mbTrailByte">
- <short>Uses trailing byte</short>
- </element>
- <!-- function Visibility: default -->
- <element name="ByteType">
- <short>Return the type of byte in an ansistring for a multi-byte character set</short>
- <descr>
- <var>ByteType</var> returns the type of byte in the ansistring <var>S</var>
- at (1-based) position <var>Index</var>.
- </descr>
- <errors>
- No checking on the index is performed.
- </errors>
- <seealso>
- <link id="TMbcsByteType"/>
- <link id="StrByteType"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="StrByteType">
- <short>Return the type of byte in a null-terminated string for a multi-byte character set</short>
- <descr>
- <var>StrByteType</var> returns the type of byte in the null-terminated
- string <var>Str</var> at (0-based) position <var>Index</var>.
- </descr>
- <errors>
- No checking on the index is performed.
- </errors>
- <seealso>
- <link id="TMbcsByteType"/>
- <link id="ByteType"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="ByteToCharLen">
- <short>Convert a length in bytes to a length in characters.</short>
- <descr>
- <var>ByteToCharLen</var> returns the number of bytes in <var>S</var>, but
- limits the result to <var>MaxLen</var>
- </descr>
- <errors>
- This function does not take into account MBCS yet.
- </errors>
- <seealso>
- <link id="CharToByteLen"/>
- <link id="ByteToCharIndex"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="CharToByteLen">
- <short>Convert a length in characters to a length in bytes.</short>
- <descr>
- <var>CharToByteLen</var> returns the number of bytes in <var>S</var>, but
- limits the result to <var>MaxLen</var>
- </descr>
- <errors>
- This function does not take into account MBCS yet.
- </errors>
- <seealso>
- <link id="ByteToCharLen"/>
- <link id="ByteToCharIndex"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="ByteToCharIndex">
- <short>Convert a character index in Bytes to an Index in characters</short>
- <descr>
- <var>ByteToCharIndex</var> returns the index (in characters) of the
- <var>Index</var>-th byte in <var>S</var>.
- </descr>
- <errors>
- This function does not take into account MBCS yet.
- </errors>
- <seealso>
- <link id="CharToByteLen"/>
- <link id="ByteToCharLen"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="SwitchChars">
- <short>Characters which start a command-line switch</short>
- <descr>
- The characters in this set will be used by the <link id="FindCmdLineSwitch"/>
- function to determine whether a command-line
- argument is a switch (an option) or a value. If the first character of an
- argument is in <var>SwitchChars</var>, it will be considered an option or
- switch.
- </descr>
- <errors>
- </errors>
- <seealso>
- <link id="FindCmdLineSwitch"/>
- </seealso>
- </element>
- <!-- set type Visibility: default -->
- <element name="TSysCharSet">
- <short>Set of characters.</short>
- <descr>
- Generic set of characters type.
- </descr>
- <errors>
- </errors>
- <seealso>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="FindCmdLineSwitch">
- <short>Check whether a certain switch is present on the command-line.</short>
- <descr>
- <var>FindCmdLineSwitch</var> will check all command-line arguments for the
- presence of the option <var>Switch</var>. It will return <var>True</var> if
- it was found, <var>False</var> otherwise. Characters that appear in
- <var>Chars</var> (default is <link id="SwitchChars"/>) are assumed to
- indicate an option (switch). If the parameter <var>IgnoreCase</var> is
- <var>True</var>, case will be ignored when looking for the switch. Default
- is to search case sensitive.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="SwitchChars"/>
- </seealso>
- </element>
- <!-- alias type Visibility: default -->
- <element name="THandle">
- <short>File Handle type.</short>
- <descr>
- <var>THandle</var> refers to the definition of <var>THandle</var> in the
- system unit, and is provided for backward compatibility only.
- </descr>
- </element>
- <!-- procedure type Visibility: default -->
- <element name="TProcedure">
- <short>Procedural type</short>
- <descr>
- <var>TProcedure</var> is a general definition of a procedural callback.
- </descr>
- </element>
- <!-- alias type Visibility: default -->
- <element name="TFileName">
- <short>Filename type</short>
- <descr>
- <var>TFileName</var> is used in the <link id="TSearchRec"/> definition.
- </descr>
- <seealso>
- <link id="TSearchRec"/>
- </seealso>
- </element>
- <!-- set type Visibility: default -->
- <element name="TIntegerSet">
- <short>Set with size of integer.</short>
- <descr>
- <var>TIntegerSet</var> is a generic integer subrange set definition whose
- size fits in a single integer.
- </descr>
- </element>
- <!-- record type Visibility: default -->
- <element name="LongRec">
- <short>Record describing a longint value</short>
- <descr>
- <var>LongRec</var> can be used to extract the parts of an long Integer: the
- high and low word, or the 4 separate bytes as a zero-based array of bytes.
- Note that the meaning of High and Low parts are different on various CPUs.
- </descr>
- <seealso>
- <link id="WordRec"/>
- <link id="Int64Rec"/>
- </seealso>
- </element>
- <!-- record type Visibility: default -->
- <element name="WordRec">
- <short>Record describing a word value.</short>
- <descr>
- <var>LongRec</var> can be used to extract the parts of a word: the
- high and low byte. Note that the meaning of the High and Low parts
- are different on various CPUs.
- </descr>
- <seealso>
- <link id="LongRec"/>
- <link id="Int64Rec"/>
- </seealso>
- </element>
- <!-- variable Visibility: default -->
- <element name="WordRec.Lo">
- <short>Low byte of the word.</short>
- </element>
- <!-- variable Visibility: default -->
- <element name="WordRec.Hi">
- <short>High byte of the word</short>
- </element>
- <!-- record type Visibility: default -->
- <element name="Int64Rec">
- <short>Record describing an Int64 value</short>
- <descr>
- <var>Int64Rec</var> can be used to extract the parts of a Int64: the
- high and low cardinal, or a zero-based array of 4 words, or a zero based
- array of 8 bytes. Note that the meaning of the High and Low parts
- are different on various CPUs.
- </descr>
- <seealso>
- <link id="LongRec"/>
- <link id="WordRec"/>
- </seealso>
- </element>
- <!-- pointer type Visibility: default -->
- <element name="PByteArray">
- <short>Pointer to an array of byte.</short>
- <descr>
- Generic pointer to <link id="TByteArray"/>. Use to access memory regions as
- a byte array.
- </descr>
- <seealso>
- <link id="TByteArray"/>
- <link id="PWordArray"/>
- <link id="TWordArray"/>
- </seealso>
- </element>
- <!-- array type Visibility: default -->
- <element name="TByteArray">
- <short>Array of bytes</short>
- <descr>
- <var>TByteArray</var> is a generic array definition, mostly for use as a
- base type of the <link id="PByteArray"/> type.
- </descr>
- <seealso>
- <link id="PByteArray"/>
- <link id="PWordArray"/>
- <link id="TWordArray"/>
- </seealso>
- </element>
- <!-- pointer type Visibility: default -->
- <element name="PWordArray">
- <short>Pointer to an array of word.</short>
- <descr>
- Generic pointer to <link id="TWordArray"/>. Use to access memory regions as
- a word array.
- </descr>
- <seealso>
- <link id="TWordArray"/>
- <link id="PByteArray"/>
- <link id="TByteArray"/>
- </seealso>
- </element>
- <!-- array type Visibility: default -->
- <element name="TWordArray">
- <short></short>
- <descr>
- <var>TWordArray</var> is a generic array definition, mostly for use as a
- base type of the <link id="PWordArray"/> type.
- </descr>
- <errors>
- </errors>
- <seealso>
- <link id="PWordArray"/>
- <link id="PByteArray"/>
- <link id="TByteArray"/>
- </seealso>
- </element>
- <!-- record type Visibility: default -->
- <element name="TMethod">
- <short>Record describing a method.</short>
- <descr>
- <var>TMethod</var> describes a general method pointer, and is used in
- Run-Time Type Information handling.
- </descr>
- </element>
- <!-- variable Visibility: default -->
- <element name="TMethod.Code">
- <short>Pointer to method code.</short>
- </element>
- <!-- variable Visibility: default -->
- <element name="TMethod.Data">
- <short>Pointer to object instance.</short>
- </element>
- <!-- object Visibility: default -->
- <element name="Exception">
- <short>Base class of all exceptions.</short>
- <descr>
- <var>Exception</var> is the base class for all exception handling routines
- in the RTL and FCL. While it is possible to raise an exception with any
- class descending from <var>TObject</var>, it is recommended to use
- <var>Exception</var> as the basis of exception class objects:
- the <var>Exception</var> class introduces properties to associate a message
- and a help context with the exception being raised. What is more, the
- <file>SysUtils</file> unit sets the necessary hooks to catch and display
- unhandled exceptions: in such cases, the message displayed to the end user,
- will be the message stored in the exception class.
- </descr>
- <seealso>
- <link id="ExceptObject"/>
- <link id="ExceptAddr"/>
- <link id="ExceptionErrorMessage"/>
- <link id="ShowException"/>
- <link id="Abort"/>
- </seealso>
- </element>
- <!-- constructor Visibility: public -->
- <element name="Exception.Create">
- <short>Constructs a new exception object with a given message.</short>
- <var>Create</var> allocates a new exception object on the heap, and stores
- <var>Msg</var> in the <link id="Exception.Message">Message</link> property.
- <errors>
- Construction may fail if there is not enough memory on the heap.
- </errors>
- <seealso>
- <link id="Exception.CreateFmt"/>
- <link id="Exception.Message"/>
- </seealso>
- </element>
- <!-- constructor Visibility: public -->
- <element name="Exception.CreateFmt">
- <short>Constructs a new exception object and formats a new message.</short>
- <p>
- <var>CreateFmt</var> allocates a new exception object on the heap, and
- fills the <link id="Exception.Message">Message</link> property with the result of a call to <link
- id="Format"/> with <var>Msg</var> and <var>Args</var> as arguments.
- </p>
- <p>Using <var>CreateFmt</var> is equivalent to using the following code:</p>
- <code>
- Exception.Create(Format(Msg,Args));
- </code>
- <errors>
- Construction may fail if there is not enough memory on the heap.
- </errors>
- <seealso>
- <link id="Exception.Create"/>
- <link id="Exception.Message"/>
- <link id="Format"/>
- </seealso>
- </element>
- <!-- constructor Visibility: public -->
- <element name="Exception.CreateRes">
- <short>Constructs a new exception object and gets the message from a resource.</short>
- <p>
- <var>CreateRes</var> allocates a new exception object on the heap, and stores
- fetches the resource string <var>ResString</var> from the resources and
- stores it in the <link id="Exception.Message">Message</link> property.
- </p>
- <remark>
- Resources are not yet implemented in Free Pascal.
- </remark>
- <errors>
- Construction may fail if there is not enough memory on the heap.
- </errors>
- <seealso>
- <link id="Exception.Create"/>
- <link id="Exception.CreateFmt"/>
- <link id="Exception.CreateResFmt"/>
- <link id="Exception.Message"/>
- </seealso>
- </element>
- <!-- constructor Visibility: public -->
- <element name="Exception.CreateResFmt">
- <short>Constructs a new exception object and formats the message from a
- reasource.</short>
- <descr>
- <var>CreateResFmt</var> does the same as <link
- id="Exception.CreateFmt">CreateFmt</link>, but fetches
- the message from the resource string <var>ResString</var>.
- </descr>
- <errors>
- Construction may fail if there is not enough memory on the heap.
- </errors>
- <seealso>
- <link id="Exception.Create"/>
- <link id="Exception.CreateFmt"/>
- <link id="Exception.CreateRes"/>
- <link id="Exception.Message"/>
- </seealso>
- </element>
- <!-- constructor Visibility: public -->
- <element name="Exception.CreateHelp">
- <short>Constructs a new exception object and sets the help context.</short>
- <descr>
- <var>CreateHelp</var> does the same as the <link
- id="Exception.Create">Create</link> constructor,
- but additionally stores <var>AHelpContext</var> in the <link
- id="Exception.HelpContext">HelpContext</link> property.
- </descr>
- <seealso>
- <link id="Exception.Create"/>
- </seealso>
- </element>
- <!-- constructor Visibility: public -->
- <element name="Exception.CreateFmtHelp">
- <short>Constructs a new exception object and sets the help context and
- formats the message</short>
- <descr>
- <var>CreateFmtHelp</var> does the same as the <link
- id="Exception.CreateFmt">CreateFmt</link> constructor,
- but additionally stores <var>AHelpContext</var> in the <link
- id="Exception.HelpContext">HelpContext</link> property.
- </descr>
- <seealso>
- <link id="Exception.CreateFmt"/>
- </seealso>
- </element>
- <!-- constructor Visibility: public -->
- <element name="Exception.CreateResHelp">
- <short>Constructs a new exception object and sets the help context and
- gets the message from a resource</short>
- <descr>
- <var>CreateResHelp</var> does the same as the <link
- id="Exception.CreateRes">CreateRes</link> constructor,
- but additionally stores <var>AHelpContext</var> in the <link
- id="Exception.HelpContext">HelpContext</link> property.
- </descr>
- <seealso>
- <link id="Exception.CreateRes"/>
- </seealso>
- </element>
- <!-- constructor Visibility: public -->
- <element name="Exception.CreateResFmtHelp">
- <short>Constructs a new exception object and sets the help context and
- formats the message from a resource</short>
- <descr>
- <var>CreateResFmtHelp</var> does the same as the <link
- id="Exception.CreateResFmt">CreateResFmt</link> constructor,
- but additionally stores <var>AHelpContext</var> in the <link
- id="Exception.HelpContext">HelpContext</link> property.
- </descr>
- <seealso>
- <link id="Exception.CreateResFmt"/>
- </seealso>
- </element>
- <!-- property Visibility: public -->
- <element name="Exception.helpcontext">
- <short>Help context associated with the exception.</short>
- <descr>
- <var>HelpContext</var> is the help context associated with the exception,
- and can be used to provide context-sensitive help when the exception error
- message is displayed. It should be set in the exception constructor.
- </descr>
- <seealso>
- <link id="Exception.CreateHelp"/>
- <link id="Exception.Message"/>
- </seealso>
- </element>
- <!-- property Visibility: public -->
- <element name="Exception.message">
- <short>Message associated with the exception.</short>
- <descr>
- <var>Message</var> provides additional information about the exception. It
- is shown to the user in e.g. the <link id="ShowException"/> routine, and
- should be set in the constructor when the exception is raised.
- </descr>
- <seealso>
- <link id="Exception.Create"/>
- <link id="Exception.HelpContext"/>
- </seealso>
- </element>
- <!-- "class of" type Visibility: default -->
- <element name="ExceptClass">
- <short>Exception Class reference</short>
- <descr>
- <var>ExceptClass</var> is a <link id="Exception"/> class reference.
- </descr>
- <seealso>
- <link id="Exception"/>
- </seealso>
- </element>
- <!-- object Visibility: default -->
- <element name="EExternal">
- <short>External Exception.</short>
- <descr>
- <var>EExternal</var> is the base exception for all external exceptions, as
- reported by the CPU or operating system, as opposed to internal exceptions,
- which are raised by the program itself. The <file>SysUtils</file> unit
- converts all operating system errors to descendents of <var>EExternal</var>.
- </descr>
- <seealso>
- <link id="EInterror"/>
- <link id="EExternal"/>
- <link id="EMathError"/>
- <link id="EExternalException"/>
- <link id="EAccessViolation"/>
- <link id="EPrivilege"/>
- <link id="EStackOverflow"/>
- <link id="EControlC"/>
- </seealso>
- </element>
- <!-- object Visibility: default -->
- <element name="EIntError">
- <short>Integer operation error.</short>
- <descr>
- <var>EInterror</var> is used when the operating system or CPU signals an
- integer operation error, e.g., an overflow.
- </descr>
- </element>
- <!-- object Visibility: default -->
- <element name="EDivByZero">
- <short>Division by zero error.</short>
- <descr>
- <var>EDivByZero</var> is used when the operating system or CPU signals a
- division by zero error.
- </descr>
- <link id="EIntError"/>
- <link id="ERangeError"/>
- <link id="EIntOverflow"/>
- </element>
- <!-- object Visibility: default -->
- <element name="ERangeError">
- <short>Range check error.</short>
- <descr>
- <var>ERangeError</var> is raised by the Free Pascal runtime library if
- range checking is on, and a range check error occurs.
- </descr>
- <seealso>
- <link id="EIntError"/>
- <link id="EDivByZero"/>
- <link id="EIntOverflow"/>
- </seealso>
- </element>
- <!-- object Visibility: default -->
- <element name="EIntOverflow">
- <short>Integer overflow error.</short>
- <descr>
- <var>EIntOverflow</var> is used when the operating system or CPU signals a
- integer overflow error.
- </descr>
- <seealso>
- <link id="EIntError"/>
- <link id="EDivByZero"/>
- <link id="ERangeError"/>
- </seealso>
- </element>
- <!-- object Visibility: default -->
- <element name="EMathError">
- <short>Mathematical error</short>
- <descr>
- <var>EMathError</var> is used when the operating system or CPU signals a
- floating point overflow error.
- </descr>
- <seealso>
- <link id="EIntError"/>
- <link id="EIntOverflow"/>
- <link id="EDivByZero"/>
- <link id="ERangeError"/>
- </seealso>
- </element>
- <!-- object Visibility: default -->
- <element name="EInvalidOp">
- <short>Invalid operation.</short>
- <descr>
- <var>EInvalidOp</var> is raised when an invalid operation is encountered.
- </descr>
- </element>
- <!-- object Visibility: default -->
- <element name="EZeroDivide">
- <short>Division by zero error.</short>
- <descr>
- <var>EZeroDivide</var> occurs when a float division by zero occurs.
- </descr>
- <seealso>
- <link id="EIntError"/>
- <link id="EIntOverflow"/>
- <link id="EDivByZero"/>
- <link id="ERangeError"/>
- </seealso>
- </element>
- <!-- object Visibility: default -->
- <element name="EOverflow">
- <short>Float overflow error.</short>
- <descr>
- <var>EOverflow</var> occurs when a float operation overflows. (i.e. result
- is too big to represent).
- </descr>
- <seealso>
- <link id="EIntError"/>
- <link id="EIntOverflow"/>
- <link id="EDivByZero"/>
- <link id="ERangeError"/>
- <link id="EUnderFlow"/>
- </seealso>
- </element>
- <!-- object Visibility: default -->
- <element name="EUnderflow">
- <short>Float underflow error</short>
- <descr>
- <var>EOverflow</var> occurs when a float operation underflows (i.e. result
- is too small to represent).
- </descr>
- <seealso>
- <link id="EIntError"/>
- <link id="EIntOverflow"/>
- <link id="EDivByZero"/>
- <link id="ERangeError"/>
- <link id="EOverFlow"/>
- </seealso>
- </element>
- <!-- object Visibility: default -->
- <element name="EInOutError">
- <short>Input/Output error</short>
- <descr>
- <var>EInOutError</var> is raised when a IO routine of Free Pascal returns an
- error. The error is converted to an <var>EInOutError</var> only if the
- input/output checking feature of FPC is turned on. The error code of the
- input/output operation is returned in <link
- id="EInOutError.ErrorCode">ErrorCode</link>.
- </descr>
- <seealso>
- <link id="EInOutError.ErrorCode"/>
- </seealso>
- </element>
- <!-- variable Visibility: public -->
- <element name="EInOutError.ErrorCode">
- <short>Error code for Input/Output operation.</short>
- <descr>
- <var>ErrorCode</var> contains the error code from the I/O operation which
- raised the <link id="EInoutError"/> exception. An explanation of the error
- codes can be found in the user's manual.
- </descr>
- </element>
- <!-- object Visibility: default -->
- <element name="EHeapMemoryError">
- <short>Heap memory error</short>
- <descr>
- <var>EHeapMemoryError</var> is raised when an error occurs in heap
- (dynamically allocated) memory.
- </descr>
- <seealso>
- <link id="EHeapException"/>
- <link id="EoutOfMemory"/>
- <link id="EInvalidPointer"/>
- </seealso>
- </element>
- <!-- alias type Visibility: default -->
- <element name="EHeapException">
- <short>Heap exception</short>
- <descr>
- <var>EHeapMemoryError</var> is raised when an error occurs in the heap
- management routines.
- </descr>
- <seealso>
- <link id="EHeapMemoryError"/>
- <link id="EoutOfMemory"/>
- <link id="EInvalidPointer"/>
- </seealso>
- </element>
- <!-- object Visibility: default -->
- <element name="EExternalException">
- <short>External exception</short>
- <descr>
- <var>EExternalException</var> is raised when an external routine raises an
- exception.
- </descr>
- <seealso>
- <link id="EExternal"/>
- </seealso>
- </element>
- <!-- object Visibility: default -->
- <element name="EInvalidPointer">
- <short>Invalid pointer operation</short>
- <descr>
- <var>EInvalidPointer</var> is raised when an invalid heap pointer is used.
- </descr>
- <seealso>
- <link id="EHeapException"/>
- <link id="EHeapMemoryError"/>
- <link id="EOutOfMemory"/>
- </seealso>
- </element>
- <!-- object Visibility: default -->
- <element name="EOutOfMemory">
- <short>Out of memory error.</short>
- <descr>
- <var>EOutOfMemory</var> occurs when memory can no longer be allocated on the
- heap. An instance of <var>EOutOfMemory</var> is allocated on the heap at
- program startup, so it is available when needed.
- </descr>
- <seealso>
- <link id="EHeapException"/>
- <link id="EHeapMemoryError"/>
- <link id="EInvalidPointer"/>
- </seealso>
- </element>
- <!-- object Visibility: default -->
- <element name="EInvalidCast">
- <short>Invalid typecast error.</short>
- <descr>
- <var>EInvalidCast</var> is raised when an invalid typecast error (using the
- <var>as</var> operator) is encountered.
- </descr>
- <seealso>
- <link id="EIntfCastError"/>
- </seealso>
- </element>
- <!-- object Visibility: default -->
- <element name="EVariantError">
- <short>Variant error.</short>
- <descr>
- <var>EVariantError</var> is raised by the internal variant routines.
- </descr>
- </element>
- <!-- object Visibility: default -->
- <element name="EAccessViolation">
- <short>Access Violation error</short>
- <descr>
- <var>EAccessViolation</var> is raised when the OS reports an Access
- Violation, i.e. when invalid memory is accessed.
- </descr>
- </element>
- <!-- object Visibility: default -->
- <element name="EPrivilege">
- <short>Privileged instruction error.</short>
- <descr>
- <var>EPrivilege</var> is raised when the OS reports that an invalid
- instruction was executed.
- </descr>
- </element>
- <!-- object Visibility: default -->
- <element name="EStackOverflow">
- <short>Stack overflow error.</short>
- <descr>
- <var>EStackOverflow</var> occurs when the stack has grown too big (e.g. by
- infinite recursion).
- </descr>
- </element>
- <!-- object Visibility: default -->
- <element name="EControlC">
- <short>Control-C (abort) was pressed on the console.</short>
- <descr>
- <var>EControlC</var> is raised when the user has pressed CTRL-C in a
- console application.
- </descr>
- </element>
- <!-- object Visibility: default -->
- <element name="EConvertError">
- <short>Conversion error.</short>
- <descr>
- <var>EConvertError</var> is raised by the various conversion routines in the
- <file>SysUtils</file> unit. The message will contain more specific error
- information.
- </descr>
- </element>
- <!-- object Visibility: default -->
- <element name="EAbort">
- <short>Abort error.</short>
- <descr>
- <var>Abort</var> is raised by the <link id="Abort"/> procedure. It is not
- displayed in GUI applications, and serves only to immediatly abort the current
- procedure, and return control to the main program loop.
- </descr>
- <seealso>
- <link id="Abort"/>
- </seealso>
- </element>
- <!-- object Visibility: default -->
- <element name="EAbstractError">
- <short>Abstract error.</short>
- <descr>
- <var>EAbstractError</var> is raised when an abstract error occurs, i.e. when
- an unimplemented abstract method is called.
- </descr>
- </element>
- <!-- object Visibility: default -->
- <element name="EAssertionFailed">
- <short>Assertion failed error.</short>
- <descr>
- <var>EAssertionFailed</var> is raised when an application that is compiled
- with assertions, encounters an invalid assertion.
- </descr>
- <errors>
- </errors>
- <seealso>
- </seealso>
- </element>
- <!-- object Visibility: default -->
- <element name="EPropReadOnly">
- <short>Read-only property error.</short>
- <descr>
- <var>EPropReadOnly</var> is raised when an attempt is made to write to a
- read-only property.
- </descr>
- <link id="EPropWriteOnly"/>
- </element>
- <!-- object Visibility: default -->
- <element name="EPropWriteOnly">
- <short>Write-only property error.</short>
- <descr>
- <var>EPropWriteOnly</var> is raised when an attempt is made to read from a
- write-only property.
- </descr>
- <seealso>
- <link id="EPropReadOnly"/>
- </seealso>
- </element>
- <!-- object Visibility: default -->
- <element name="EIntfCastError">
- <short>Invalid interface cast error.</short>
- <descr>
- <var>EIntfCastError</var> is raised when an invalid interface cast is
- encountered.
- </descr>
- <seealso>
- <link id="EInvalidCast"/>
- </seealso>
- </element>
- <!-- object Visibility: default -->
- <element name="EInvalidContainer">
- <short>Invalid container error.</short>
- <descr>
- <var>EInvalidContainer</var> is not yet used by Free Pascal, and is provided
- for Delphi compatibility only.
- </descr>
- </element>
- <!-- object Visibility: default -->
- <element name="EInvalidInsert">
- <short>Invalid insert error.</short>
- <descr>
- <var>EInvalidInsert</var> is not yet used by Free Pascal, and is provided
- for Delphi compatibility only.
- </descr>
- </element>
- <!-- object Visibility: default -->
- <element name="EPackageError">
- <short>Package error.</short>
- <descr>
- <var>EPackageError</var> is not yet used by Free Pascal, and is provided
- for Delphi compatibility only.
- </descr>
- </element>
- <!-- object Visibility: default -->
- <element name="EOSError">
- <short>Operating system error.</short>
- <descr>
- <var>EOSError</var> is raised when some Operating System call fails. The
- <link id="EOSError.ErrorCode">ErrorCode</link> property contains the
- operating system error code.
- </descr>
- <seealso>
- <link id="EOSError.ErrorCode"/>
- </seealso>
- </element>
- <!-- variable Visibility: public -->
- <element name="EOSError.ErrorCode">
- <short>Operating system error code.</short>
- <descr>
- <var>ErrorCode</var> contains the error code reported by the operating
- system for the call which caused the <link id="EOSError"/> to be raised.
- </descr>
- <seealso>
- <link id="EOSError"/>
- </seealso>
- </element>
- <!-- object Visibility: default -->
- <element name="ESafecallException">
- <short>SafeCall exception.</short>
- <descr>
- <var>ESafecallException</var> is not yet used by Free Pascal, and is provided
- for Delphi compatibility only.
- </descr>
- </element>
- <!-- object Visibility: default -->
- <element name="ENoThreadSupport">
- <short>No Thread support error.</short>
- <descr>
- <var>ENoThreadSupport</var> is raised when some thread routines are invoked,
- and thread support was not enabled when the program was compiled.
- </descr>
- </element>
- <!-- function Visibility: default -->
- <element name="ExceptObject">
- <short>Current Exception object.</short>
- <descr>
- <var>ExceptObject</var> returns the currently treated exception object when
- an exception is raised, and the stack is unwound.
- </descr>
- <errors>
- If there is no exception, the function returns <var>Nil</var>
- </errors>
- <seealso>
- <link id="ExceptAddr"/>
- <link id="ExceptionErrorMessage"/>
- <link id="ShowException"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="ExceptAddr">
- <short>Current exception address.</short>
- <descr>
- <var>ExceptAddr</var> returns the address from the currently treated
- exception object when an exception is raised, and the stack is unwound.
- </descr>
- <seealso>
- <link id="ExceptObject"/>
- <link id="ExceptionErrorMessage"/>
- <link id="ShowException"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="ExceptionErrorMessage">
- <short>Return a message describing the exception.</short>
- <descr>
- <p>
- <var>ExceptionErrorMessage</var> creates a string that describes the
- exception object <var>ExceptObject</var> at address <var>ExceptAddr</var>.
- It can be used to display exception messages. The string will be stored in
- the memory pointed to by <var>Buffer</var>, and will at most have
- <var>Size</var> characters.
- </p>
- <p>
- The routine checks whether <var>ExceptObject</var> is a <link
- id="Exception"/> object or not, and adapts the output accordingly.
- </p>
- </descr>
- <seealso>
- <link id="ExceptObject"/>
- <link id="ExceptAddr"/>
- <link id="ShowException"/>
- </seealso>
- </element>
- <!-- procedure Visibility: default -->
- <element name="ShowException">
- <short>Show the current exception to the user.</short>
- <descr>
- <p>
- <var>ShowException</var> shows a message stating that a <var>ExceptObject</var>
- was raised at address <var>ExceptAddr</var>. It uses <link
- id="ExceptionErrorMessage"/> to create the message, and is aware of the fact
- whether the application is a console application or a GUI application. For a
- console application, the message is written to standard error output. For a
- GUI application, <link id="OnShowException"/> is executed.
- </p>
- </descr>
- <errors>
- <p>
- If, for a GUI application, <link id="OnShowException"/> is not set, no
- message will be displayed to the user.
- </p>
- <p>
- The exception message can be at most 255 characters long: It is possible
- that no memory can be allocated on the heap, so ansistrings are not
- available, so a shortstring is used to display the message.
- </p>
- </errors>
- <seealso>
- <link id="ExceptObject"/>
- <link id="ExceptAddr"/>
- <link id="ExceptionErrorMessage"/>
- </seealso>
- </element>
- <!-- procedure Visibility: default -->
- <element name="Abort">
- <short>Abort program execution.</short>
- <descr>
- <var>Abort</var> raises an <link id="EAbort"/> exception.
- </descr>
- <seealso>
- <link id="Abort"/>
- </seealso>
- </element>
- <!-- procedure Visibility: default -->
- <element name="OutOfMemoryError">
- <short>Raise an <var>EOutOfMemory</var> exception</short>
- <descr>
- <var>OutOfMemoryError</var> raises an <link id="EOutOfMemory"/> exception,
- with an exception object that has been allocated on the heap at program
- startup. The program should neved create an <link id="EOutOfMemory"/>
- exception, but always call this routine.
- </descr>
- <seealso>
- <link id="EOutOfMemory"/>
- </seealso>
- </element>
- <!-- procedure Visibility: default -->
- <element name="Beep">
- <short>Sound the system bell.</short>
- <descr>
- <var>Beep</var> sounds the system bell, if one is available.
- </descr>
- <errors>
- This routine may not be implemented on all platforms.
- </errors>
- </element>
- <!-- function Visibility: default -->
- <element name="SysErrorMessage">
- <short>Format a system error message.</short>
- <descr>
- <var>SysErrorMessage</var> returns a string that describes the operating
- system error code <var>ErrorCode</var>.
- </descr>
- <errors>
- This routine may not be implemented on all platforms.
- </errors>
- <seealso>
- <link id="EOSError"/>
- </seealso>
- </element>
- <!-- function type Visibility: default -->
- <element name="TTerminateProc">
- <short>Terminate procedure procedural variable.</short>
- <descr>
- <var>TTerminateProc</var> is the procedural type which should be used when
- adding exit procedures.
- </descr>
- <seealso>
- <link id="AddTerminateProc"/>
- </seealso>
- </element>
- <!-- procedure Visibility: default -->
- <element name="AddTerminateProc">
- <short>Add a procedure to the exit chain.</short>
- <descr>
- <var>AddTerminateProc</var> adds <var>TermProc</var> to the list of exit
- procedures. When the program exits, the list of exit procedures is run over,
- and all procedures are called one by one, in the reverse order that they
- were added to the exit chain.
- </descr>
- <errors>
- If no memory is available on the heap, an exception may be raised.
- </errors>
- <seealso>
- <link id="TTerminateProc"/>
- <link id="CallTerminateProcs"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="CallTerminateProcs">
- <short>Call the exit chain procedures.</short>
- <descr>
- <var>CallTerminateProcs</var> is run on program exit. It executes all
- terminate procedures that were added to the exit chain with <link
- id="AddTerminateProc"/>, and does this in reverse order.
- </descr>
- <errors>
- If one of the exit procedure raises an exception, it is <em>not</em> caught,
- and the remaining exit procedures will not be executed.
- </errors>
- <seealso>
- <link id="TTerminateProc"/>
- <link id="AddTerminateProc"/>
- </seealso>
- </element>
- <!-- variable Visibility: default -->
- <element name="OnShowException">
- <short>Callback to show unhandled exceptions.</short>
- <descr>
- <var>OnShowException</var> is the callback that <link id="ShowException"/>
- uses to display a message in a GUI application. For GUI applications, this
- variable should always be set. Note that no memory may be available when
- this callback is called, so the callback should already have all resources
- it needs, when the callback is set.
- </descr>
- <seealso>
- <link id="ShowException"/>
- <link id="ExceptionErrorMessage"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="filerecnamelength">
- <short>Length of filerec filename field.</short>
- <descr>
- <var>filerecnamelength</var> describes the length of the <link
- id="FileRec"/> filename field.
- </descr>
- </element>
- <!-- record type Visibility: default -->
- <element name="FileRec">
- <short>Record describing an untyped file.</short>
- <descr>
- <p>
- <var>FileRec</var> describes a untyped file. This record is made available
- so it can be used to implement drivers for other than the normal file system
- file records.
- </p>
- </descr>
- <seealso>
- <link id="TFileRec"/>
- <link id="TextRec"/>
- <link id="TTextRec"/>
- </seealso>
- </element>
- <!-- variable Visibility: default -->
- <element name="FileRec.Handle">
- <short>Operating system file handle.</short>
- </element>
- <!-- variable Visibility: default -->
- <element name="FileRec.Mode">
- <short>Current file mode.</short>
- </element>
- <!-- variable Visibility: default -->
- <element name="FileRec.RecSize">
- <short>Record data size</short>
- </element>
- <!-- variable Visibility: default -->
- <element name="FileRec._private">
- <short>Private data. Do not use</short>
- </element>
- <!-- variable Visibility: default -->
- <element name="FileRec.UserData">
- <short>User data. Only use when implementing new type.</short>
- </element>
- <!-- variable Visibility: default -->
- <element name="FileRec.name">
- <short>File name</short>
- </element>
- <!-- constant Visibility: default -->
- <element name="TextRecNameLength">
- <short>Length of text file record filename field </short>
- </element>
- <!-- constant Visibility: default -->
- <element name="TextRecBufSize">
- <short>Buffer size of text file record.</short>
- <var>TextRecBufSize</var> is the size of the default buffer in <link
- id="TextRec"/>
- </element>
- <!-- array type Visibility: default -->
- <element name="TextBuf">
- <short>Text record buffer array type</short>
- <descr>
- <var>TextBuf</var> is the type for the default buffer in <link
- id="TextRec"/>
- </descr>
- </element>
- <!-- record type Visibility: default -->
- <element name="TextRec">
- <short>Record describing a text file type</short>
- <descr>
- <p>
- <var>TextRec</var> describes a text file. This record is made available
- so it can be used to implement drivers for other than the normal file system
- file records.
- </p>
- <p>
- To implement a driver, an <var>Assign</var> procedure must be implemented,
- which fills in the various fields of the record. Most notably, the callback
- functions must be filled in appropriately.
- After this, the normal file operations will handle all necessary calls to the
- various callbacks.
- </p>
- </descr>
- <seealso>
- <link id="TTextRec"/>
- <link id="TFileRec"/>
- <link id="FileRec"/>
- </seealso>
- </element>
- <!-- variable Visibility: default -->
- <element name="TextRec.Handle">
- <short>Operating system handle for file.</short>
- </element>
- <!-- variable Visibility: default -->
- <element name="TextRec.Mode">
- <short>Open mode</short>
- </element>
- <!-- variable Visibility: default -->
- <element name="TextRec.bufsize">
- <short>Size of buffer.</short>
- </element>
- <!-- variable Visibility: default -->
- <element name="TextRec._private">
- <short>Private data. Do not use.</short>
- </element>
- <!-- variable Visibility: default -->
- <element name="TextRec.bufpos">
- <short>Current buffer position.</short>
- </element>
- <!-- variable Visibility: default -->
- <element name="TextRec.bufend">
- <short>Current buffer end.</short>
- </element>
- <!-- variable Visibility: default -->
- <element name="TextRec.bufptr">
- <short>Pointer to current buffer.</short>
- </element>
- <!-- variable Visibility: default -->
- <element name="TextRec.openfunc">
- <short>File open function. Allocates handle.</short>
- </element>
- <!-- variable Visibility: default -->
- <element name="TextRec.inoutfunc">
- <short>Read/write function</short>
- </element>
- <!-- variable Visibility: default -->
- <element name="TextRec.flushfunc">
- <short>Flush buffer function</short>
- </element>
- <!-- variable Visibility: default -->
- <element name="TextRec.closefunc">
- <short>Close handle function.</short>
- </element>
- <!-- variable Visibility: default -->
- <element name="TextRec.UserData">
- <short>User data for text rec.</short>
- </element>
- <!-- variable Visibility: default -->
- <element name="TextRec.name">
- <short>File name</short>
- </element>
- <!-- variable Visibility: default -->
- <element name="TextRec.buffer">
- <short>Default buffer.</short>
- </element>
- <!-- constant Visibility: default -->
- <element name="HexDisplayPrefix">
- <short>String to prepend to hexadecimal values</short>
- <descr>
- <var>HexDisplayPrefix</var> is used by the formatting routines to indicate
- that the number which follows the prefix is in Hexadecimal notation.
- </descr>
- <errors>
- Currently unused in Free Pascal.
- </errors>
- </element>
- <!-- constant Visibility: default -->
- <element name="PathDelim">
- <short>Path (directory) delimiter.</short>
- <descr>
- <var>PathDelim</var> refers to the system unit's <var>DirectorySeparator</var>
- constant, it is for Delphi compatibility only.
- </descr>
- <seealso>
- <link id="DriveDelim"/>
- <link id="PathSep"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="DriveDelim">
- <short>Drive letter delimiter</short>
- <descr>
- <var>DriveDelim</var> refers to the system unit's <var>DriveSeparator</var>
- constant, it is for Delphi compatibility only.
- </descr>
- <seealso>
- <link id="PathDelim"/>
- <link id="PathSep"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="PathSep">
- <short>Path separator. (Separates paths in search path lists)</short>
- <descr>
- <var>PathSep</var> refers to the system unit's <var>PathSeparator</var>
- constant, it is for Delphi compatibility only.
- </descr>
- <seealso>
- <link id="PathDelim"/>
- <link id="DriveDelim"/>
- </seealso>
- </element>
- <!-- alias type Visibility: default -->
- <element name="TFileRec">
- <short>Record describing an untyped file.</short>
- <descr>
- Alias for <link id="FileRec"/> for Delphi compatibility.
- </descr>
- </element>
- <!-- alias type Visibility: default -->
- <element name="TTextRec">
- <short>Record describing a text file.</short>
- <descr>
- Alias for <link id="TextRec"/> for Delphi compatibility.
- </descr>
- </element>
- <!-- array type Visibility: default -->
- <element name="TCaseTranslationTable">
- <short>Type for case conversion tables.</short>
- <descr>
- <var>TCaseTranslationTable</var> is the type for a lookup table that can
- convert 255 ascii characters.
- </descr>
- <seealso>
- <link id="UpperCaseTable"/>
- <link id="LowerCaseTable"/>
- </seealso>
- </element>
- <!-- variable Visibility: default -->
- <element name="UpperCaseTable">
- <short>Table for conversion of characters to uppercase.</short>
- <descr>
- <var>UpperCaseTable</var> is used by the <link id="UpperCase"/> routine (and
- friends) to convert a string to all-uppercase characters. It is filled with
- the appropriate entries by the <file>SysUtils</file> unit initialization routines.
- </descr>
- <seealso>
- <link id="TCaseTranslationTable"/>
- <link id="LowerCaseTable"/>
- <link id="UpperCase"/>
- </seealso>
- </element>
- <!-- variable Visibility: default -->
- <element name="LowerCaseTable">
- <short>Table for conversion of characters to lowercase.</short>
- <descr>
- <var>LowerCaseTable</var> is used by the <link id="LowerCase"/> routine (and
- friends) to convert a string to all-lowercase characters. It is filled with
- the appropriate entries by the <file>SysUtils</file> unit initialization
- routines.
- </descr>
- <seealso>
- <link id="TCaseTranslationTable"/>
- <link id="UpperCaseTable"/>
- <link id="LowerCase"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="DateSeparator">
- <short>Date separator character (subject to locale).</short>
- <descr>
- <var>DateSeparator</var> is the character used by various date/time
- conversion routines as the character that separates the day from the month
- and the month from the year in a date notation. It is used by the date
- formatting routines. This constant is initialized by the
- initialization routines of the <file>SysUtils</file> unit.
- </descr>
- <seealso>
- <link id="LongDateFormat"/>
- <link id="FormatDateTime"/>
- <link id="DateSeparator"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="ShortDateFormat">
- <short>Short Date Format string (subject to locale).</short>
- <descr>
- <var>ShortDateFormat</var> contains a template to format a date in a short
- format. It is used by the date formatting routines.
- This constant is initialized by the initialization routines of the <file>SysUtils</file> unit.
- </descr>
- <seealso>
- <link id="LongDateFormat"/>
- <link id="FormatDateTime"/>
- <link id="DateSeparator"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="LongDateFormat">
- <short>Long date format string (subject to locale).</short>
- <descr>
- <var>LongDateFormat</var> contains a template to format a date in a long
- format. It is used by the date formatting routines.
- This constant is initialized by the initialization routines of the <file>SysUtils</file> unit.
- </descr>
- <seealso>
- <link id="ShortDateFormat"/>
- <link id="FormatDateTime"/>
- <link id="DateSeparator"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="ShortMonthNames">
- <short>Names of months, abbreviated form.</short>
- <descr>
- <var>ShortMonthNames</var> is an array with the abbreviated names of months.
- It is used by the date formatting routines.
- This constant is initialized by the initialization routines of the <file>SysUtils</file> unit.
- </descr>
- <seealso>
- <link id="ShortDateFormat"/>
- <link id="FormatDateTime"/>
- <link id="LongMonthNames"/>
- <link id="ShortDayNames"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="LongMonthNames">
- <short>Full names of months.</short>
- <descr>
- <var>LongMonthNames</var> is an array with the full names of months.
- It is used by the date formatting routines.
- This constant is initialized by the initialization routines of the <file>SysUtils</file> unit.
- </descr>
- <seealso>
- <link id="ShortDateFormat"/>
- <link id="FormatDateTime"/>
- <link id="ShortMonthNames"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="ShortDayNames">
- <short>Names of days, abbreviated form.</short>
- <descr>
- <var>ShortDayNames</var> is an array with the abbreviated names of days.
- It is used by the date formatting routines.
- This constant is initialized by the initialization routines of the <file>SysUtils</file> unit.
- </descr>
- <seealso>
- <link id="ShortDateFormat"/>
- <link id="FormatDateTime"/>
- <link id="LongDayNames"/>
- <link id="ShortMonthNames"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="LongDayNames">
- <short>Full names of days.</short>
- <descr>
- <var>LongDayNames</var> is an array with the full names of days.
- It is used by the date formatting routines.
- This constant is initialized by the initialization routines of the <file>SysUtils</file> unit.
- </descr>
- <seealso>
- <link id="ShortDateFormat"/>
- <link id="FormatDateTime"/>
- <link id="ShortDayNames"/>
- <link id="ShortMonthNames"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="ShortTimeFormat">
- <short>Short time format string (subject to locale).</short>
- <descr>
- <var>ShortTimeFormat</var> contains a template to format a time in a short
- notation. It is used by the time formatting routines.
- This constant is initialized by the initialization routines of the <file>SysUtils</file> unit.
- </descr>
- <seealso>
- <link id="LongTimeFormat"/>
- <link id="FormatDateTime"/>
- <link id="TimeSeparator"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="LongTimeFormat">
- <short>Long time format string (subject to locale)</short>
- <descr>
- <var>LongTimeFormat</var> contains a template to format a time in full
- notation. It is used by the time formatting routines.
- This constant is initialized by the initialization routines of the <file>SysUtils</file> unit.
- </descr>
- <seealso>
- <link id="ShortTimeFormat"/>
- <link id="FormatDateTime"/>
- <link id="TimeSeparator"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="TimeSeparator">
- <short>Time separator character.</short>
- <descr>
- <var>TimeSeparator</var> is used by the time formatting routines to separate
- the hours from the minutes and the minutes from the seconds.
- It is used by the time formatting routines.
- This constant is initialized by the initialization routines of the <file>SysUtils</file> unit.
- </descr>
- <seealso>
- <link id="ShortTimeFormat"/>
- <link id="FormatDateTime"/>
- <link id="LongTimeFormat"/>
- <link id="TimeAMString"/>
- <link id="TimePMString"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="TimeAMString">
- <short>AM indicator string.</short>
- <descr>
- <var>TimeAMString</var> is used to display the AM symbol in the time
- formatting routines.
- It is used by the time formatting routines.
- This constant is initialized by the initialization routines of the <file>SysUtils</file> unit.</descr>
- <errors>
- </errors>
- <seealso>
- <link id="ShortTimeFormat"/>
- <link id="FormatDateTime"/>
- <link id="LongTimeFormat"/>
- <link id="TimePMString"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="TimePMString">
- <short>PM indicator string.</short>
- <descr>
- <var>TimePMString</var> is used to display the PM symbol in the time
- formatting routines.
- It is used by the time formatting routines.
- This constant is initialized by the initialization routines of the <file>SysUtils</file> unit.
- </descr>
- <seealso>
- <link id="ShortTimeFormat"/>
- <link id="FormatDateTime"/>
- <link id="LongTimeFormat"/>
- <link id="TimeAMString"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="DecimalSeparator">
- <short>Decimal point separator.</short>
- <descr>
- <var>DecimalSeparator</var> is used to display the decimal symbol in
- floating point numbers or currencies.
- It is used by the float formatting routines.
- This constant is initialized by the initialization routines of the
- <file>SysUtils</file> unit.
- </descr>
- <seealso>
- <link id="ThousandSeparator"/>
- <link id="Format"/>
- <link id="FormatFloat"/>
- <link id="FloatToStr"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="ThousandSeparator">
- <short>Thousand grouping character.</short>
- <descr>
- <var>ThousandSeparator</var> is used to separate groups of thousands in
- floating point numbers or currencies. It is used by the float formatting routines.
- This constant is initialized by the initialization routines of the
- <file>SysUtils</file> unit.
- </descr>
- <seealso>
- <link id="DecimalSeparator"/>
- <link id="Format"/>
- <link id="FormatFloat"/>
- <link id="FloatToStr"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="CurrencyDecimals">
- <short>Number of decimals in currency amounts.</short>
- <descr>
- <var>CurrencyDecimals</var> is the number of decimals to be used when
- formatting a currency. It is used by the float formatting routines.
- This constant is initialized by the initialization routines of the
- <file>SysUtils</file> unit.
- </descr>
- <seealso>
- <link id="Format"/>
- <link id="DecimalSeparator"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="CurrencyFormat">
- <short>Format string for currencies.</short>
- <descr>
- <var>CurrencyFormat</var> is the default format string for positive currencies.
- It is used by the float formatting routines.
- This constant is initialized by the initialization routines of the
- <file>SysUtils</file> unit.
- </descr>
- <seealso>
- <link id="CurrencyDecimals"/>
- <link id="NegCurrFormat"/>
- <link id="CurrencyString"/>
- <link id="Format"/>
- <link id="FloatToText"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="NegCurrFormat">
- <short>Format string for negative currencies.</short>
- <descr>
- <var>CurrencyFormat</var> is the default format string for negative currencies.
- It is used by the float formatting routines.
- This constant is initialized by the initialization routines of the
- <file>SysUtils</file> unit.
- </descr>
- <seealso>
- <link id="CurrencyDecimals"/>
- <link id="CurrencyFormat"/>
- <link id="CurrencyString"/>
- <link id="Format"/>
- <link id="FloatToText"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="CurrencyString">
- <short>Name of currency.</short>
- <descr>
- <var>CurrencyString</var> is the currency symbol for the current locale.
- It is used by the float formatting routines.
- This constant is initialized by the initialization routines of the
- <file>SysUtils</file> unit.
- </descr>
- <seealso>
- <link id="CurrencyDecimals"/>
- <link id="NegCurrFormat"/>
- <link id="CurrencyFormat"/>
- <link id="Format"/>
- <link id="FloatToText"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="strlen">
- <short>Length of a null-terminated string.</short>
- <descr>
- Returns the length of the null-terminated string <var>P</var>.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="StrNew"/>
- </seealso>
- <example file="stringex/ex1"/>
- </element>
- <!-- function Visibility: default -->
- <element name="strcopy">
- <short>Copy a null-terminated string</short>
- <descr>
- Copy the null terminated string in <var>Source</var> to <var>Dest</var>, and
- returns a pointer to <var>Dest</var>. <var>Dest</var> needs enough room to contain
- <var>Source</var>, i.e. <var>StrLen(Source)+1</var> bytes.
- </descr>
- <errors>
- No length checking is performed.
- </errors>
- <seealso>
- <link id="StrPCopy"/>
- <link id="StrLCopy"/>
- <link id="StrECopy"/>
- </seealso>
- <example file="stringex/ex4"/>
- </element>
- <!-- function Visibility: default -->
- <element name="strlcopy">
- <short>Copy a null-terminated string, limited in length.</short>
- <descr>
- Copies <var>MaxLen</var> characters from <var>Source</var> to <var>Dest</var>, and makes
- <var>Dest</var> a null terminated string.
- </descr>
- <errors>
- No length checking is performed.
- </errors>
- <seealso>
- <link id="StrCopy"/>
- <link id="StrECopy"/>
- </seealso>
- <example file="stringex/ex5"/>
- </element>
- <!-- function Visibility: default -->
- <element name="strecopy">
- <short>Copy a null-terminated string, return a pointer to the end.</short>
- <descr>
- Copies the Null-terminated string in <var>Source</var> to <var>Dest</var>, and
- returns a pointer to the end (i.e. the terminating Null-character) of the
- copied string.
- </descr>
- <errors>
- No length checking is performed.
- </errors>
- <seealso>
- <link id="StrLCopy"/>
- <link id="StrCopy"/>
- </seealso>
- <example file="stringex/ex6"/>
- </element>
- <!-- function Visibility: default -->
- <element name="strend">
- <short>Return a pointer to the end of a null-terminated string</short>
- <descr>
- Returns a pointer to the end of <var>P</var>. (i.e. to the terminating
- null-character.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="StrLen"/>
- </seealso>
- <example file="stringex/ex7"/>
- </element>
- <!-- function Visibility: default -->
- <element name="strcat">
- <short>Concatenate 2 null-terminated strings.</short>
- <descr>
- Attaches <var>Source</var> to <var>Dest</var> and returns <var>Dest</var>.
- </descr>
- <errors>
- No length checking is performed.
- </errors>
- <seealso>
- <link id="StrLCat"/>
- </seealso>
- <example file="stringex/ex11"/>
- </element>
- <!-- function Visibility: default -->
- <element name="strcomp">
- <short>Compare 2 null-terminated strings, case sensitive.</short>
- <descr>
- <p>
- Compares the null-terminated strings <var>S1</var> and <var>S2</var>.
- The result is
- </p>
- <ul>
- <li> A negative <var>Longint</var> when <var>S1<S2</var>.
- </li>
- <li> 0 when <var>S1=S2</var>.
- </li>
- <li> A positive <var>Longint</var> when <var>S1>S2</var>.
- </li>
- </ul>
- <p>
- For an example, see <link id="StrLComp"/>.
- </p>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="StrLComp"/>
- <link id="StrIComp"/>
- <link id="StrLIComp"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="strlcomp">
- <short>Compare limited number of characters of 2 null-terminated strings </short>
- <descr>
- <p>
- Compares maximum <var>L</var> characters of the null-terminated strings
- <var>S1</var> and <var>S2</var>.
- The result is
- </p>
- <ul>
- <li> A negative <var>Longint</var> when <var>S1<S2</var>.
- </li>
- <li> 0 when <var>S1=S2</var>.
- </li>
- <li> A positive <var>Longint</var> when <var>S1>S2</var>.
- </li>
- </ul>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="StrComp"/>
- <link id="StrIComp"/>
- <link id="StrLIComp"/>
- </seealso>
- <example file="stringex/ex8"/>
- </element>
- <!-- function Visibility: default -->
- <element name="stricomp">
- <short>Compare 2 null-terminated strings, case insensitive.</short>
- <descr>
- <p>
- Compares the null-terminated strings <var>S1</var> and <var>S2</var>, ignoring case.
- The result is
- </p>
- <ul>
- <li> A negative <var>Longint</var> when <var>S1<S2</var>.
- </li>
- <li> 0 when <var>S1=S2</var>.
- </li>
- <li> A positive <var>Longint</var> when <var>S1>S2</var>.
- </li>
- </ul>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="StrLComp"/>
- <link id="StrComp"/>
- <link id="StrLIComp"/>
- </seealso>
- <example file="stringex/ex8"/>
- </element>
- <!-- function Visibility: default -->
- <element name="strmove">
- <short>Move a null-terminated string to new location.</short>
- <descr>
- Copies <var>MaxLen</var> characters from <var>Source</var> to <var>Dest</var>. No
- terminating null-character is copied.
- Returns <var>Dest</var>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="StrLCopy"/>
- <link id="StrCopy"/>
- </seealso>
- <example file="stringex/ex10"/>
- </element>
- <!-- function Visibility: default -->
- <element name="strlcat">
- <short>Concatenate 2 null-terminated strings, with length boundary.</short>
- <descr>
- Adds <var>MaxLen</var> characters from <var>Source</var> to <var>Dest</var>, and adds a
- terminating null-character. Returns <var>Dest</var>.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="StrCat"/>
- </seealso>
- <example file="stringex/ex12"/>
- </element>
- <!-- function Visibility: default -->
- <element name="strscan">
- <short>Find first occurrence of a character in a null-terminated string.</short>
- <descr>
- Returns a pointer to the first occurrence of the character <var>C</var> in the
- null-terminated string <var>P</var>. If <var>C</var> does not occur, returns
- <var>Nil</var>.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="StrRScan"/>
- <link id="StrPos"/>
- </seealso>
- <example file="stringex/ex13"/>
- </element>
- <!-- function Visibility: default -->
- <element name="strrscan">
- <short>Find last occurrence of a character in a null-terminated string.</short>
- <descr>
- <p>
- Returns a pointer to the last occurrence of the character <var>C</var> in the
- null-terminated string <var>P</var>. If <var>C</var> does not occur, returns
- <var>Nil</var>.
- </p>
- <p>
- For an example, see <link id="StrScan"/>.
- </p>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="StrScan"/>
- <link id="StrPos"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="strlower">
- <short>Convert null-terminated string to all-lowercase.</short>
- <descr>
- Converts <var>P</var> to an all-lowercase string. Returns <var>P</var>.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="StrUpper"/>
- </seealso>
- <example file="stringex/ex14"/>
- </element>
- <!-- function Visibility: default -->
- <element name="strupper">
- <short>Convert null-terminated string to all-uppercase</short>
- <descr>
- <p>
- Converts <var>P</var> to an all-uppercase string. Returns <var>P</var>.
- </p>
- <p>
- For an example, see <link id="StrLower"/>
- </p>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="StrLower"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="strlicomp">
- <short>Compare limited number of characters in 2 null-terminated strings,
- ignoring case.</short>
- <descr>
- <p>
- Compares maximum <var>L</var> characters of the null-terminated strings <var>S1</var>
- and <var>S2</var>, ignoring case.
- The result is
- </p>
- <ul>
- <li> A negative <var>Longint</var> when <var>S1<S2</var>.
- </li>
- <li> 0 when <var>S1=S2</var>.
- </li>
- <li> A positive <var>Longint</var> when <var>S1>S2</var>.
- </li>
- </ul>
- <p>
- For an example, see <link id="StrIComp"/>
- </p>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="StrLComp"/>
- <link id="StrComp"/>
- <link id="StrIComp"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="strpos">
- <short>Find position of one null-terminated substring in another.</short>
- <descr>
- Returns a pointer to the first occurrence of <var>S2</var> in <var>S1</var>.
- If <var>S2</var> does not occur in <var>S1</var>, returns <var>Nil</var>.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="StrScan"/>
- <link id="StrRScan"/>
- </seealso>
- <example file="stringex/ex15"/>
- </element>
- <!-- function Visibility: default -->
- <element name="strnew">
- <short>Allocate room for new null-terminated string.</short>
- <descr>
- Copies <var>P</var> to the Heap, and returns a pointer to the copy.
- </descr>
- <errors>
- Returns <var>Nil</var> if no memory was available for the copy.
- </errors>
- <seealso>
- <link id="StrCopy"/>
- <link id="StrDispose"/>
- </seealso>
- <example file="stringex/ex16"/>
- </element>
- <!-- function Visibility: default -->
- <element name="AnsiCompareFileName">
- <short>Compare 2 filenames.</short>
- <descr>
- <p>
- <var>AnsiCompareFileName</var> compares 2 filenames <var>S1</var> and
- <var>S2</var>, and returns
- </p>
- <dl>
- <dt>< 0</dt>
- <dd>if <var>S1</var><<var>S2</var>. </dd>
- <dt>= 0</dt> <dd>if <var>S1=S2</var>. </dd>
- <dt>> 0</dt>
- <dd>if <var>S1</var>><var>S2</var>. </dd>
- </dl>
- <p>
- The function actually checks <var>FileNameCaseSensitive</var> and returns
- the result of <link id="AnsiCompareStr"/> or <link id="AnsiCompareText"/>
- depending on whether <var>FileNameCaseSensitive</var> is <var>True</var> or
- <var>False</var>
- </p>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="AnsiCompareStr"/>
- <link id="AnsiCompareText"/>
- <link id="AnsiLowerCaseFileName"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="AnsiLowerCaseFileName">
- <short>Convert filename to lowercase.</short>
- <descr>
- <p>
- <var>AnsiLowerCaseFileName</var> simply returns the result of
- </p>
- <code>
- AnsiLowerCase(S);
- </code>
- </descr>
- <seealso>
- <link id="AnsiLowerCase"/>
- <link id="AnsiCompareFileName"/>
- <link id="AnsiUpperCaseFileName"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="AnsiUpperCaseFileName">
- <short>Convert filename to uppercase.</short>
- <descr>
- <p>
- <var>AnsiUpperCaseFileName</var> simply returns the result of
- </p>
- <code>
- AnsiUpperCase(S);
- </code>
- </descr>
- <seealso>
- <link id="AnsiUpperCase"/>
- <link id="AnsiCompareFileName"/>
- <link id="AnsiLowerCaseFileName"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="AnsiPos">
- <short>Return Position of one ansistring in another.</short>
- <descr>
- <var>AnsiPos</var> does the same as the standard <var>Pos</var> function.
- </descr>
- <seealso>
- <link id="AnsiStrPos"/>
- <link id="AnsiStrScan"/>
- <link id="AnsiStrRScan"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="AnsiStrPos">
- <short>Return position of one null-terminated substring in another</short>
- <descr>
- <var>AnsiStrPos</var> returns a pointer to the first occurrence of
- <var>SubStr</var> in <var>Str</var>. If <var>SubStr</var> does not occur in
- <var>Str</var> then <var>Nil</var> is returned.
- </descr>
- <errors>
- An access violation may occur if either <var>Str</var> or <var>SubStr</var>
- point to invalid memory.
- </errors>
- <seealso>
- <link id="AnsiPos"/>
- <link id="AnsiStrScan"/>
- <link id="AnsiStrRScan"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="AnsiStrRScan">
- <short>Find last occurrence of a character in a null-terminated string.</short>
- <descr>
- <var>AnsiStrPos</var> returns a pointer to the <em>last</em> occurrence of
- the character <var>Chr</var> in <var>Str</var>. If <var>Chr</var> does not occur in
- <var>Str</var> then <var>Nil</var> is returned.
- </descr>
- <errors>
- An access violation may occur if <var>Str</var> points to invalid memory.
- </errors>
- <seealso>
- <link id="AnsiPos"/>
- <link id="AnsiStrScan"/>
- <link id="AnsiStrPos"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="AnsiStrScan">
- <short>Find first occurrence of a character in a null-terminated string.</short>
- <descr>
- <var>AnsiStrPos</var> returns a pointer to the <em>first</em> occurrence of
- the character <var>Chr</var> in <var>Str</var>. If <var>Chr</var> does not occur in
- <var>Str</var> then <var>Nil</var> is returned.
- </descr>
- <errors>
- An access violation may occur if <var>Str</var> points to invalid memory.
- </errors>
- <seealso>
- <link id="AnsiPos"/>
- <link id="AnsiStrScan"/>
- <link id="AnsiStrPos"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="DirSeparators">
- <short>Characters that are known directory separators.</short>
- <descr>
- <var>DirSeparators</var> is a set of characters which are known directory
- separator characters on all supported platforms. This set is used by the
- <link id="SetDirSeparators"/> call to correct pathnames for the current
- platform.
- </descr>
- <seealso>
- <link id="DoDirSeparators"/>
- <link id="SetDirSeparators"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="IncludeTrailingPathDelimiter">
- <short>Add trailing directory separator to a pathname, if needed.</short>
- <descr>
- <var>IncludeTrailingPathDelimiter</var> adds a trailing path delimiter
- character (<link id="PathDelim"/>) to <var>Path</var> if none is present
- yet, and returns the result. If <var>Path</var> is empty, nothing is added.
- </descr>
- <seealso>
- <link id="IncludeTrailingBackslash"/>
- <link id="ExcludeTrailingPathDelimiter"/>
- <link id="PathDelim"/>
- <link id="IsPathDelimiter"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="IncludeTrailingBackslash">
- <short>Add trailing directory separator to a pathname, if needed.</short>
- <descr>
- <var>IncludeTrailingBackslash</var> is provided for backwards compatibility
- with Delphi. Use <link id="IncludeTrailingPathDelimiter"/> instead.
- </descr>
- <seealso>
- <link id="IncludeTrailingPathDelimiter"/>
- <link id="ExcludeTrailingPathDelimiter"/>
- <link id="PathDelim"/>
- <link id="IsPathDelimiter"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="ExcludeTrailingPathDelimiter">
- <short>Strip trailing directory separator from a pathname, if needed.</short>
- <descr>
- <var>ExcludeTrailingPathDelimiter</var> removes the trailing path delimiter
- character (<link id="PathDelim"/>) from <var>Path</var> if it is present,
- and returns the result.
- </descr>
- <seealso>
- <link id="ExcludeTrailingBackslash"/>
- <link id="IncludeTrailingPathDelimiter"/>
- <link id="PathDelim"/>
- <link id="IsPathDelimiter"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="ExcludeTrailingBackSlash">
- <short>Strip trailing directory separator from a pathname, if needed.</short>
- <descr>
- <var>ExcludeTrailingBackslash</var> is provided for backwards compatibility
- with Delphi. Use <link id="ExcludeTrailingPathDelimiter"/> instead.
- </descr>
- <seealso>
- <link id="IncludeTrailingPathDelimiter"/>
- <link id="ExcludeTrailingPathDelimiter"/>
- <link id="PathDelim"/>
- <link id="IsPathDelimiter"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="IsPathDelimiter">
- <short>Is the character at the given position a pathdelimiter ?</short>
- <descr>
- <var>IsPathDelimiter</var> returns <var>True</var> if the character at
- position <var>Index</var> equals <link id="PathDelim"/>, i.e. if it is a
- path delimiter character for the current platform.
- </descr>
- <errors>
- <link id="IncludeTrailingPathDelimiter"/>
- <link id="ExcludeTrailingPathDelimiter"/>
- <link id="PathDelim"/>
- </errors>
- <seealso>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="SameFileName">
- <short>Are two filenames referring to the same file ?</short>
- <descr>
- <var>SameFileName</var> returns <var>True</var> if calling <link
- id="AnsiCompareFileName"/> with arguments <var>S1</var> and <var>S2</var>
- returns 0, and returns <var>False</var> otherwise.
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="AnsiCompareFileName"/>
- </seealso>
- </element>
- <!-- record type Visibility: default -->
- <element name="TSearchRec">
- <short>Record describing a search handle or result </short>
- <descr>
- <p>
- <var>TSearchRec</var> is a search handle description record. It is
- initialized by a call to <link id="FindFirst"/> and can be used to do
- subsequent calls to <link id="FindNext"/>. It contains the result of these
- function calls. It must be used to close the search sequence with a call to
- <link id="FindClose"/>.
- </p>
- <remark>
- Not all fields of this record should be used. Some of the fields are for
- internal use only.
- </remark>
- </descr>
- <seealso>
- <link id="FindFirst"/>
- <link id="FindNext"/>
- <link id="FindClose"/>
- </seealso>
- </element>
- <!-- variable Visibility: default -->
- <element name="TSearchRec.Time">
- <short>Timestamp of the file.</short>
- </element>
- <!-- variable Visibility: default -->
- <element name="TSearchRec.Size">
- <short>Size of the file.</short>
- </element>
- <!-- variable Visibility: default -->
- <element name="TSearchRec.Attr">
- <short>Attributes of the file.</short>
- </element>
- <!-- variable Visibility: default -->
- <element name="TSearchRec.Name">
- <short>File name (no directory part)</short>
- </element>
- <!-- variable Visibility: default -->
- <element name="TSearchRec.ExcludeAttr">
- <short>Attributes to exclude from search (do not use).</short>
- </element>
- <!-- variable Visibility: default -->
- <element name="TSearchRec.FindHandle">
- <short>Internal OS handle (do not use).</short>
- </element>
- <!-- constant Visibility: default -->
- <element name="faReadOnly">
- <short>Read-Only file.</short>
- <descr>
- Attribute of a file, meaning the file is read-only.
- Used in <link id="TSearchRec"/> and <link id="FindFirst"/>
- </descr>
- <seealso>
- <link id="TSearchRec"/>
- <link id="FindFirst"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="faHidden">
- <short>Hidden file.</short>
- <descr>Attribute of a file, meaning the file is hidden. On unix, this means
- the filename starts with a dot character.</descr>
- <descr>
- Attribute of a file, meaning the file is read-only.
- Used in <link id="TSearchRec"/> and <link id="FindFirst"/>
- </descr>
- <seealso>
- <link id="TSearchRec"/>
- <link id="FindFirst"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="faSysFile">
- <short>System file (Dos/Windows only)</short>
- <descr>
- Attribute of a file, meaning the file is a system file.
- Used in <link id="TSearchRec"/> and <link id="FindFirst"/>
- </descr>
- <seealso>
- <link id="TSearchRec"/>
- <link id="FindFirst"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="faVolumeId">
- <short>Volume id (Dos/Windows only)</short>
- <descr>
- Attribute of a file, meaning the file contains the volume ID.
- Used in <link id="TSearchRec"/> and <link id="FindFirst"/>
- </descr>
- <seealso>
- <link id="TSearchRec"/>
- <link id="FindFirst"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="faDirectory">
- <short>File is a directory</short>
- <descr>
- Attribute of a file, meaning the file is a directory.
- Used in <link id="TSearchRec"/> and <link id="FindFirst"/>
- </descr>
- <seealso>
- <link id="TSearchRec"/>
- <link id="FindFirst"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="faArchive">
- <short>Archive bit is set</short>
- <descr>
- Attribute of a file, meaning the file has the archive bit set.
- Used in <link id="TSearchRec"/> and <link id="FindFirst"/>
- </descr>
- <seealso>
- <link id="TSearchRec"/>
- <link id="FindFirst"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="faAnyFile">
- <short>Match any file</short>
- <descr>
- Use this attribute in the <link id="FindFirst"/> call to find all matching
- files.
- </descr>
- <seealso>
- <link id="FindFirst"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="fmOpenRead">
- <short>Open file in read-only mode</short>
- <descr>
- <var>fmOpenRead</var> is used in the <link id="FileOpen"/> call to open a
- file in read-only mode.
- </descr>
- <seealso>
- <link id="FileOpen"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="fmOpenWrite">
- <short>Open file in write-only mode</short>
- <descr>
- <var>fmOpenWrite</var> is used in the <link id="FileOpen"/> call to open a
- file in write-only mode.
- </descr>
- <seealso>
- <link id="FileOpen"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="fmOpenReadWrite">
- <short>Open file in read/write mode.</short>
- <descr>
- <var>fmOpenReadWrite</var> is used in the <link id="FileOpen"/> call to open a
- file in read-write mode.
- </descr>
- <seealso>
- <link id="FileOpen"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="fmShareCompat">
- <short>Open file in DOS share-compatibility mode</short>
- <descr>
- <var>fmOpenShareCompat</var> is used in the <link id="FileOpen"/> call
- OR-ed together with one of <link id="fmOpenReadWrite"/>, <link
- id="fmOpenRead"/> or <link id="fmOpenWrite"/>,to open a
- file in a sharing modus that is equivalent to sharing implemented in MS-DOS.
- </descr>
- <seealso>
- <link id="FileOpen"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="fmShareExclusive">
- <short>Lock file for exclusive use</short>
- <descr>
- <var>fmOpenShareExclusive</var> is used in the <link id="FileOpen"/> call
- OR-ed together with one of <link id="fmOpenReadWrite"/>, <link
- id="fmOpenRead"/> or <link id="fmOpenWrite"/>, to open a
- file exclusively.
- </descr>
- <seealso>
- <link id="FileOpen"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="fmShareDenyWrite">
- <short>Lock file so other processes can only read.</short>
- <descr>
- <var>fmOpenShareExclusive</var> is used in the <link id="FileOpen"/> call
- OR-ed together with one of <link id="fmOpenReadWrite"/>, <link
- id="fmOpenRead"/> or <link id="fmOpenWrite"/>, to open a
- file exclusively.
- </descr>
- <seealso>
- <link id="FileOpen"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="fmShareDenyRead">
- <short>Lock file so other processes cannot read.</short>
- <descr>
- <var>fmOpenShareExclusive</var> is used in the <link id="FileOpen"/> call
- OR-ed together with one of <link id="fmOpenReadWrite"/>, <link
- id="fmOpenRead"/> or <link id="fmOpenWrite"/>, to open a
- file so other processes cannot read from it.
- </descr>
- <seealso>
- <link id="FileOpen"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="fmShareDenyNone">
- <short>Do not lock file.</short>
- <descr>
- <var>fmOpenShareExclusive</var> is used in the <link id="FileOpen"/> call
- OR-ed together with one of <link id="fmOpenReadWrite"/>, <link
- id="fmOpenRead"/> or <link id="fmOpenWrite"/>, to open a
- file so other processes can read/write the file as well.
- </descr>
- <seealso>
- <link id="FileOpen"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="fsFromBeginning">
- <short>Start seek operation from beginning of file.</short>
- <descr>
- <var>fsFromBeginning</var> is used to indicate in the <link id="FileSeek"/>
- call that a seek operation should be started at the start of the file.
- </descr>
- <seealso>
- <link id="FileSeek"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="fsFromCurrent">
- <short>Start seek operation from current position in file.</short>
- <descr>
- <var>fsFromBeginning</var> is used to indicate in the <link id="FileSeek"/>
- call that a seek operation should be started at the current position in the file.
- </descr>
- <seealso>
- <link id="FileSeek"/>
- </seealso>
- </element>
- <!-- constant Visibility: default -->
- <element name="fsFromEnd">
- <short>Start seek operation from end of file.</short>
- <descr>
- <var>fsFromBeginning</var> is used to indicate in the <link id="FileSeek"/>
- call that a seek operation should be started at the last position in the file.
- </descr>
- <seealso>
- <link id="FileSeek"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="DirectoryExists">
- <short>Check whether a directory exists in the file system.</short>
- <descr>
- <var>DirectoryExists</var> checks whether <var>Directory</var> exists in the
- filesystem and is actually a directory. If this is the case, the function
- returns <var>True</var>, otherwise <var>False</var> is returned.
- </descr>
- <seealso>
- <link id="FileExists"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="FileIsReadOnly">
- <short>Check whether a file is read-only.</short>
- <descr>
- <var>FileIsReadOnly</var> checks whether <var>FileName</var> exists in the
- filesystem and is a read-only file. If this is the case, the function
- returns <var>True</var>, otherwise <var>False</var> is returned.
- </descr>
- <seealso>
- <link id="FileExists"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="GetFileHandle">
- <short>Extract OS handle from an untyped file or text file.</short>
- <descr>
- <var>GetFileHandle</var> returns the operating system handle for the file
- descriptor <var>F</var>. It can be used in various file operations which are
- not directly supported by the pascal language.
- </descr>
- </element>
- <!-- function Visibility: default -->
- <element name="InterLockedIncrement">
- <short>Thread-safe integer increment.</short>
- <descr>
- <var>InterlockedIncrement</var> increments <var>Target</var> in a
- thread-safe way, and returns the new value of <var>Target</var>
- </descr>
- <seealso>
- <link id="InterlockedDecrement"/>
- <link id="InterlockedExchange"/>
- <link id="InterlockedExchangeAdd"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="InterLockedDecrement">
- <short>Thread-safe integer decrement</short>
- <descr>
- <var>InterlockedDecrement</var> decrements <var>Target</var> in a
- thread-safe way, and returns the new value of <var>Target</var>
- </descr>
- <seealso>
- <link id="InterlockedIncrement"/>
- <link id="InterlockedExchange"/>
- <link id="InterlockedExchangeAdd"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="InterLockedExchange">
- <short>Thread-safe exchange of 2 values.</short>
- <descr>
- <var>InterlockedDecrement</var> replaces <var>Target</var> with
- <var>Source</var> in a thread-safe way, and returns the old value
- of <var>Target</var>
- </descr>
- <seealso>
- <link id="InterlockedIncrement"/>
- <link id="InterlockedDecrement"/>
- <link id="InterlockedExchange"/>
- <link id="InterlockedExchangeAdd"/>
- </seealso>
- </element>
- <!-- function Visibility: default -->
- <element name="InterLockedExchangeAdd">
- <short>Thread-safe exchange of 2 values</short>
- <descr>
- <var>InterlockedDecrement</var> adds to <var>Target</var> the value of
- <var>Source</var> in a thread-safe way, and returns the old value
- of <var>Target</var>
- </descr>
- <seealso>
- <link id="InterlockedIncrement"/>
- <link id="InterlockedDecrement"/>
- <link id="InterlockedExchange"/>
- </seealso>
- </element>
- <!-- procedure Visibility: default -->
- <element name="FreeAndNil">
- <short>Free object if needed, and set object reference to <var>Nil</var></short>
- <descr>
- <var>FreeAndNil</var> will free the object in <var>Obj</var> and will
- set the reference in <var>Obj</var> to <var>Nil</var>. The reference is set
- to <var>Nil</var> first, so if an exception occurs in the destructor of the
- object, the reference will be <var>Nil</var> anyway.
- </descr>
- <errors>
- Exceptions that occur during the destruction of <var>Obj</var> are not
- caught.
- </errors>
- </element>
- <element name="GetTempDir">
- <short>Return name of system's temporary directory</short>
- <descr>
- <p>
- <var>GetTempDir</var> returns the temporary directory of the system. If
- <var>Global</var> is <var>True</var> (the default value) it returns the
- system temporary directory, if it is <var>False</var> then a directory
- private to the user is returned. The returned name will end with a
- directory delimiter character.
- </p>
- <p>
- These directories may be the same. No guarantee is made that this directory
- exists or is writeable by the user.
- </p>
- <p>
- The <link id="OnGetTempDir"/> handler may be set to provide custom handling
- of this routine: One could implement callbacks which take into consideration
- frameworks like KDE or GNOME, and return a different value from the default
- system implementation.
- </p>
- </descr>
- <errors>
- On error, an empty string is returned.
- </errors>
- <seealso>
- <link id="OnGetTempDir"/>
- <link id="GetTempFileName"/>
- </seealso>
- </element>
- <element name="GetTempFileName">
- <short>Return the name of a temporary file.</short>
- <descr>
- <p>
- <var>GetTempFileName</var> returns the name of a temporary file in directory
- <var>Dir</var>. The name of the file starts with <var>Prefix</var>.
- </p>
- <p>
- If <var>Dir</var> is empty, the value returned by <var>GetTempDir</var> is
- used, and if <var>Prefix</var> is empty, 'TMP' is used.
- </p>
- <p>
- The <link id="OnGetTempFile"/> handler may be set to provide custom handling
- of this routine: One could implement callbacks which take into consideration
- frameworks like KDE or GNOME, and return a different value from the default
- system implementation.
- </p>
- </descr>
- <errors>
- On error, an empty string is returned.
- </errors>
- <seealso>
- <link id="GetTempDir"/>
- <link id="OnGetTempFile"/>
- </seealso>
- </element>
- <element name="OnGetTempDir">
- <short>Handler for <link id="#rtl.sysutils.GetTempDir">GetTempDir</link> function.</short>
- <descr>
- <var>OnGetTempDir</var> can be used to provide custom behaviour for the
- <link id="GetTempDir"/> function. Note that the returned name should have a
- trailing directory delimiter character.
- </descr>
- <seealso>
- <link id="GetTempDir"/>
- <link id="OnGetTempFile"/>
- </seealso>
- </element>
- <element name="OnGetTempFile">
- <short>Handler for <link id="#rtl.sysutils.GetTempFileName">GetTempFileName</link> function.</short>
- <descr>
- <var>OnGetTempDir</var> can be used to provide custom behaviour for the
- <link id="GetTempFileName"/> function. Note that the values for
- <var>Prefix</var> and <var>Dir</var> should be observed.
- </descr>
- <seealso>
- <link id="OnGetTempDir"/>
- <link id="GetTempFileName"/>
- </seealso>
- </element>
- <element name="TGetTempDirEvent">
- <short>Function prototype for <link id="#rtl.sysutils.OnGetTempDir">OnGetTempDir</link> handler.</short>
- </element>
- <element name="TGetTempFileEvent">
- <short>Function prototype for <link id="#rtl.sysutils.OnGetTempFile">OnGetTempFile</link> handler.</short>
- </element>
- <element name="TLineEndStr">
- <short>End-of-line string</short>
- <descr>
- <var>TLineEndStr</var> is used in the <link id="TextRec"/> record to
- indicate the end-of-line sequence for a text file.
- </descr>
- </element>
- <element name="TSysLocale">
- <short>Type describing the current locale</short>
- <descr>
- <var>TSysLocale</var> describes the current locale. If <var>Fareast</var> or
- <var>MBCS</var> is <var>True</var>, then the current locale uses a
- Multi-Byte Character Set. If <var>MiddleEast</var> or <var>RightToLeft</var>
- is <var>True</var> then words and sentences are read from right to left.
- </descr>
- </element>
- <element name="TSysLocale.FarEast">
- <short>Multi-Byte Character Set used</short>
- </element>
- <element name="TSysLocale.MiddleEast">
- <short>Reading direction is Right-to-left</short>
- </element>
- <element name="TSysLocale.MBCS">
- <short>Multi-Byte Character Set used</short>
- </element>
- <element name="TSysLocale.RightToLeft">
- <short>Reading direction is Right-to-left</short>
- </element>
- <element name="SysLocale">
- <short>Variable with locale information</short>
- <descr>
- <var>SysLocale</var> is initialized by the initialization code of the
- <file>SysUtils</file> unit. For an explanation of the fields, see <link
- id="TSysLocale"/>
- </descr>
- <seealso>
- <link id="TSysLocale"/>
- </seealso>
- </element>
- <element name="ForceDirectories">
- <short>Create a chain of directories</short>
- <descr>
- <var>ForceDirectories</var> tries to create any missing directories in
- <var>Dir</var> till the whole path in <var>Dir</var> exists. It returns
- <var>True</var> if <var>Dir</var> already existed or was created
- succesfully. If it failed to create any of the parts, <var>False</var> is
- returned.
- </descr>
- </element>
- <element name="StrCharLength">
- <short>Return the length of a null-terminated string in characters.</short>
- <descr>
- <var>StrCharLength</var> returns the length of the null-terminated string
- <var>Str</var> (a widestring) in characters (not in bytes). It uses the
- widestringmanager to do this.
- </descr>
- </element>
- <element name="TryStrToFloat">
- <short>Try to convert a string to a float.</short>
- <descr>
- <var>TryStrToFloat</var> tries to convert the string <var>S</var> to a
- floating point value, and stores the result in <var>Value</var>. It returns
- <var>True</var> if the operation was succesful, and <var>False</var> if it
- failed. This operation takes into account the system settings for floating
- point representations.
- </descr>
- <errors>
- On error, <var>False</var> is returned.
- </errors>
- <seealso>
- <link id="StrToFloat"/>
- </seealso>
- </element>
- <element name="WideCompareStr">
- <short>Compare two widestrings (case sensitive)</short>
- <descr>
- <p>
- <var>WideCompareStr</var> compares two widestrings and returns the following
- result:
- </p>
- <dl>
- <dt>< 0</dt><dd> if <var>S1<S2</var>.</dd>
- <dt>0</dt><dd>if <var>S1=S2</var>.</dd>
- <dt>> 0</dt><dd> if <var>S1>S2</var>.</dd>
- </dl>
- <p>
- The comparision takes into account wide characters, i.e. it takes
- care of strange accented characters. Contrary to <link id="WideCompareText"/>,
- the comparision is case sensitive.
- </p>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="WideCompareText"/>
- <link id="WideSameStr"/>
- <link id="WideSameText"/>
- </seealso>
- </element>
- <element name="WideCompareText">
- <short>Compare two widestrings (ignoring case).</short>
- <descr>
- <descr>
- <p>
- <var>WideCompareStr</var> compares two widestrings and returns the following
- result:
- </p>
- <dl>
- <dt>< 0</dt><dd> if <var>S1<S2</var>.</dd>
- <dt>0</dt><dd>if <var>S1=S2</var>.</dd>
- <dt>> 0</dt><dd> if <var>S1>S2</var>.</dd>
- </dl>
- <p>
- The comparision takes into account wide characters, i.e. it takes
- care of strange accented characters. Contrary to <link id="WideCompareStr"/>,
- the comparision is case insensitive.
- </p>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="WideCompareStr"/>
- <link id="WideSameStr"/>
- <link id="WideSameText"/>
- </seealso>
- </descr>
- </element>
- <element name="WideFormat">
- <short>Format a wide string.</short>
- <descr>
- <p>
- <var>WideFormat</var> does the same as <link id="Format"/> but accepts as a
- formatting string a WideString. The resulting string is also a WideString.
- </p>
- <p>
- For more information about the used formatting characters, see the
- <link id="Format"/> string.
- </p>
- </descr>
- <seealso>
- <link id="Format"/>
- </seealso>
- </element>
- <element name="WideLowerCase">
- <short>Change a widestring to all-lowercase.</short>
- <descr>
- <p>
- <var>WideLowerCase</var> converts the string <var>S</var> to lowercase characters
- and returns the resulting string. It takes into account the operating system language
- settings when doing this, so spcial characters are converted correctly as
- well.
- </p>
- <remark>
- On linux, no language setting is taken in account yet.
- </remark>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="WideUpperCase"/>
- </seealso>
- </element>
- <element name="WideSameStr">
- <short>Check whether two widestrings are the same (case sensitive)</short>
- <descr>
- <var>WideSameStr</var> returns <var>True</var> if <link id="WideCompareStr"/>
- returns 0 (zero), i.e. when <var>S1</var> and <var>S2</var> are the same
- string (taking into account case).
- </descr>
- <seealso>
- <link id="WideSameText"/>
- <link id="WideCompareStr"/>
- <link id="WideCompareText"/>
- <link id="AnsiSameStr"/>
- </seealso>
- </element>
- <element name="WideSameText">
- <short>Check whether two widestrings are the same (ignoring case)</short>
- <descr>
- <var>WideSameText</var> returns <var>True</var> if <link id="WideCompareText"/>
- returns 0 (zero), i.e. when <var>S1</var> and <var>S2</var> are the same
- string (taking into account case).
- </descr>
- <seealso>
- <link id="WideSameStr"/>
- <link id="WideCompareStr"/>
- <link id="WideCompareText"/>
- <link id="AnsiSameText"/>
- </seealso>
- </element>
- <element name="WideUpperCase">
- <short>Change a widestring to all-lowercase.</short>
- <descr>
- <p>
- <var>WideUpperCase</var> converts the string <var>S</var> to uppercase characters
- and returns the resulting string. It takes into account the operating system language
- settings when doing this, so spcial characters are converted correctly as
- well.
- </p>
- <remark>
- On linux, no language setting is taken in account yet.
- </remark>
- </descr>
- <errors>
- None.
- </errors>
- <seealso>
- <link id="WideLowerCase"/>
- </seealso>
- </element>
- <element name="WrapText">
- <short>Word-wrap a text.</short>
- <descr>
- <var>WrapText</var> does a wordwrap at column <var>MaxCol</var> of the string
- in <var>Line</var>. It breaks the string only at characters which are in
- <var>BreakChars</var> (default whitespace and hyphen) and inserts then the string
- <var>BreakStr</var> (default the lineending character for the current OS).
- </descr>
- <seealso>
- <link id="StringReplace"/>
- </seealso>
- </element>
- </module>
- </package>
- </fpdoc-descriptions>
|