1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580658165826583658465856586658765886589659065916592659365946595659665976598659966006601660266036604660566066607660866096610661166126613661466156616661766186619662066216622662366246625662666276628662966306631663266336634663566366637663866396640664166426643664466456646664766486649665066516652665366546655665666576658665966606661666266636664666566666667666866696670667166726673667466756676667766786679668066816682668366846685668666876688668966906691669266936694669566966697669866996700670167026703670467056706670767086709671067116712671367146715671667176718671967206721672267236724672567266727672867296730673167326733673467356736673767386739674067416742674367446745674667476748674967506751675267536754675567566757675867596760676167626763676467656766676767686769677067716772677367746775677667776778677967806781678267836784678567866787678867896790679167926793679467956796679767986799680068016802680368046805680668076808680968106811681268136814681568166817681868196820682168226823682468256826682768286829683068316832683368346835683668376838683968406841684268436844684568466847684868496850685168526853685468556856685768586859686068616862686368646865686668676868686968706871687268736874687568766877687868796880688168826883688468856886688768886889689068916892689368946895689668976898689969006901690269036904690569066907690869096910691169126913691469156916691769186919692069216922692369246925692669276928692969306931693269336934693569366937693869396940694169426943694469456946694769486949695069516952695369546955695669576958695969606961696269636964696569666967696869696970697169726973697469756976697769786979698069816982698369846985698669876988698969906991699269936994699569966997699869997000700170027003700470057006700770087009701070117012701370147015701670177018701970207021702270237024702570267027702870297030703170327033703470357036703770387039704070417042704370447045704670477048704970507051705270537054705570567057705870597060706170627063706470657066706770687069707070717072707370747075707670777078707970807081708270837084708570867087708870897090709170927093709470957096709770987099710071017102710371047105710671077108710971107111711271137114711571167117711871197120712171227123712471257126712771287129713071317132713371347135713671377138713971407141714271437144714571467147714871497150715171527153715471557156715771587159716071617162716371647165716671677168716971707171717271737174717571767177717871797180718171827183718471857186718771887189719071917192719371947195719671977198719972007201720272037204720572067207720872097210721172127213721472157216721772187219722072217222722372247225722672277228722972307231723272337234723572367237723872397240724172427243724472457246724772487249725072517252725372547255 |
- <?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
- to the directory separator character for the current system.
- </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>
- </module>
- </package>
- </fpdoc-descriptions>
|