# All Functions and Procedures

Name Unit Description
* int65math

* int65math

* int65math

* int65math

* int65math

* bigdecimalmath

Standard operator binary *

* bigdecimalmath_template

Standard operator binary *

** bigdecimalmath_template

Standard operator binary **

** bigdecimalmath

Standard operator binary **

+ int65math

+ bigdecimalmath_template

Standard operator binary +

+ int65math

+ int65math

+ bigdecimalmath

Standard operator binary +

+ int65math

+ int65math

- int65math

- int65math

- int65math

- bigdecimalmath

Standard operator binary -

- bigdecimalmath

Standard operator unary -

- bigdecimalmath_template

Standard operator unary -

- int65math

- bigdecimalmath_template

Standard operator binary -

- int65math

- int65math

/ bigdecimalmath

Standard operator binary /
If the result can not be represented as finite decimal number (e.g. 1/3) it will be calculated with 18 digit precision after the decimal point, with an additional hidden digit for rounding (so 1/3 is 0.333333333333333333, and 0.333333333333333333*3 is 0.999999999999999999, but (1/3) * 3 is 1).

/ bigdecimalmath_template

Standard operator binary /
If the result can not be represented as finite decimal number (e.g. 1/3) it will be calculated with 18 digit precision after the decimal point, with an additional hidden digit for rounding (so 1/3 is 0.333333333333333333, and 0.333333333333333333*3 is 0.999999999999999999, but (1/3) * 3 is 1).

:= int65math

:= int65math

:= int65math

:= int65math

:= int65math

:= bigdecimalmath

Converts a native integer to a BigDecimal

:= bigdecimalmath

Converts a native integer to a BigDecimal

:= bigdecimalmath

Converts a native integer to a BigDecimal

:= bigdecimalmath_template

Converts an extended to a BigDecimal
Marked as deprecated, because it may lead to rounding errors. FloatToBigDecimal is exact, but probably some magnitudes slower. For constant values StrToBigDecimal should be used instead.

:= bigdecimalmath_template

Converts a native integer to a BigDecimal

:= bigdecimalmath

Converts an extended to a BigDecimal
Marked as deprecated, because it may lead to rounding errors. FloatToBigDecimal is exact, but probably some magnitudes slower. For constant values StrToBigDecimal should be used instead.

:= int65math

:= int65math

< bigdecimalmath

< int65math

< int65math

< int65math

< int65math

< int65math

<= bigdecimalmath

<= int65math

<= int65math

<= int65math

<= int65math

= bigdecimalmath

= int65math

= int65math

= int65math

= int65math

= int65math

> int65math

> int65math

> int65math

> int65math

> bigdecimalmath

> int65math

>= int65math

>= int65math

>= int65math

>= bigdecimalmath

>= int65math

abs bigdecimalmath

Returns the absolute value of v

abs bigdecimalmath_template

Returns the absolute value of v

and int65math

Adds element e to array a. Returns i with a[i]=e

Adds elements from a2 e to array a. Returns the OLD length of a

Adds element e to array a. Returns i with a[i]=e

Adds element e to array a. Returns i with a[i]=e

Adds elements from a2 e to array a. Returns the OLD length of a

Adds elements from a2 e to array a. Returns the OLD length of a

Adds elements from a2 e to array a. Returns the OLD length of a

Adds element e to array a. Returns i with a[i]=e

Adds element e to array a. Returns i with a[i]=e

Adds elements from a2 e to array a. Returns the OLD length of a

returns i with a[i]=e

returns i with a[i]=e

returns i with a[i]=e

returns i with a[i]=e

returns i with a[i]=e

arrayBinarySearch bbutils

Binary search in a longint array

a the ascending, sorted array
value the searched reference value
choosen which value it should return, if there are multiple possible matches
condition how the reference value should be compared with the values in the array (e.g. [bsGreater, bsEqual] will only return a match that is greater-or-equal-than value) returns the index of the found match or -1 if there is no match

arrayBinarySearch bbutils

Binary search in a string array

a the ascending, sorted array
value the searched reference value
choosen which value it should return, if there are multiple possible matches
condition how the reference value should be compared with the values in the array (e.g. [bsGreater, bsEqual] will only return a match that is greater-or-equal-than value) returns the index of the found match or -1 if there is no match

arrayBinarySearch bbutils

Binary search in a longword array

a the ascending, sorted array
value the searched reference value
choosen which value it should return, if there are multiple possible matches
condition how the reference value should be compared with the values in the array (e.g. [bsGreater, bsEqual] will only return a match that is greater-or-equal-than value) returns the index of the found match or -1 if there is no match

arrayBinarySearch bbutils

Binary search in a float array

a the ascending, sorted array
value the searched reference value
choosen which value it should return, if there are multiple possible matches
condition how the reference value should be compared with the values in the array (e.g. [bsGreater, bsEqual] will only return a match that is greater-or-equal-than value) returns the index of the found match or -1 if there is no match

arrayBinarySearch bbutils

Binary search in a int64 array

a the ascending, sorted array
value the searched reference value
choosen which value it should return, if there are multiple possible matches
condition how the reference value should be compared with the values in the array (e.g. [bsGreater, bsEqual] will only return a match that is greater-or-equal-than value) returns the index of the found match or -1 if there is no match

arrayCompare bbutils

Compares two array/slices (interleaved slice parameters, so arrayEqual(a,b,3,3) compares the first 3 elements)

arrayCompare bbutils

Compares two array/slices (interleaved slice parameters, so arrayEqual(a,b,3,3) compares the first 3 elements)

arrayCompare bbutils

Compares two array/slices (interleaved slice parameters, so arrayEqual(a,b,3,3) compares the first 3 elements)

arrayCompare bbutils

Compares two array/slices (interleaved slice parameters, so arrayEqual(a,b,3,3) compares the first 3 elements)

arrayCompare bbutils

Compares two array/slices (interleaved slice parameters, so arrayEqual(a,b,3,3) compares the first 3 elements)

arrayContains bbutils

Tests if element e exists in the array/slice (see above)

arrayContains bbutils

Tests if element e exists in the array/slice (see above)

arrayContains bbutils

Tests if element e exists in the array/slice (see above)

arrayContains bbutils

Tests if element e exists in the array/slice (see above)

arrayContains bbutils

Tests if element e exists in the array/slice (see above)

arrayDelete bbutils

Removes element at position i from a
Returns e=a[i]

arrayDelete bbutils

Removes element at position i from a
Returns e=a[i]

arrayDelete bbutils

Removes element at position i from a
Returns e=a[i]

arrayDelete bbutils

Removes element at position i from a
Returns e=a[i]

arrayDelete bbutils

Removes element at position i from a
Returns e=a[i]

arrayDeleteFast bbutils

Removes element at position i from a
Returns e=a[i]

arrayDeleteFast bbutils

Removes element at position i from a
Returns e=a[i]

arrayDeleteFast bbutils

Removes element at position i from a
Returns e=a[i]

arrayDeleteFast bbutils

Removes element at position i from a
Returns e=a[i]

arrayDeleteFast bbutils

Removes element at position i from a
Returns e=a[i]

arrayDeleteUnordered bbutils

Removes element at position i from a (destroying the order of the elements)
Returns e=a[i]

arrayDeleteUnordered bbutils

Removes element at position i from a (destroying the order of the elements)
Returns e=a[i]

arrayDeleteUnordered bbutils

Removes element at position i from a (destroying the order of the elements)
Returns e=a[i]

arrayDeleteUnordered bbutils

Removes element at position i from a (destroying the order of the elements)
Returns e=a[i]

arrayDeleteUnordered bbutils

Removes element at position i from a (destroying the order of the elements)
Returns e=a[i]

arrayDeleteUnorderedFast bbutils

Removes element at position i from a (destroying the order of the elements)
Returns e=a[i]

arrayDeleteUnorderedFast bbutils

Removes element at position i from a (destroying the order of the elements)
Returns e=a[i]

arrayDeleteUnorderedFast bbutils

Removes element at position i from a (destroying the order of the elements)
Returns e=a[i]

arrayDeleteUnorderedFast bbutils

Removes element at position i from a (destroying the order of the elements)
Returns e=a[i]

arrayDeleteUnorderedFast bbutils

Removes element at position i from a (destroying the order of the elements)
Returns e=a[i]

arrayEqual bbutils

Tests if two array/slices are equal (interleaved slice parameters, so arrayEqual(a,b,3,3) tests the first 3 elements)

arrayEqual bbutils

Tests if two array/slices are equal (interleaved slice parameters, so arrayEqual(a,b,3,3) tests the first 3 elements)

arrayEqual bbutils

Tests if two array/slices are equal (interleaved slice parameters, so arrayEqual(a,b,3,3) tests the first 3 elements)

arrayEqual bbutils

Tests if two array/slices are equal (interleaved slice parameters, so arrayEqual(a,b,3,3) tests the first 3 elements)

arrayEqual bbutils

Tests if two array/slices are equal (interleaved slice parameters, so arrayEqual(a,b,3,3) tests the first 3 elements)

arrayGet bbutils

Returns the i-th element of the array. If i < 0, the indices are taken from the end of the array. (which is actually the only use case)

arrayGet bbutils

Returns the i-th element of the array. If i < 0, the indices are taken from the end of the array. (which is actually the only use case)

arrayGet bbutils

Returns the i-th element of the array. If i < 0, the indices are taken from the end of the array. (which is actually the only use case)

arrayGet bbutils

Returns the i-th element of the array. If i < 0, the indices are taken from the end of the array. (which is actually the only use case)

arrayGet bbutils

Returns the i-th element of the array. If i < 0, the indices are taken from the end of the array. (which is actually the only use case)

arrayIndexOf bbutils

Find element e in the array/slice (see above)

arrayIndexOf bbutils

Find element e in the array/slice (see above)

arrayIndexOf bbutils

Find element e in the array/slice (see above)

arrayIndexOf bbutils

Find element e in the array/slice (see above)

arrayIndexOf bbutils

Find element e in the array/slice (see above)

arrayIndexOfLargest bbutils

Find the largest element in the array/slice (see above)

arrayIndexOfLargest bbutils

Find the largest element in the array/slice (see above)

arrayIndexOfLargest bbutils

Find the largest element in the array/slice (see above)

arrayIndexOfLargest bbutils

Find the largest element in the array/slice (see above)

arrayIndexOfLargest bbutils

Find the largest element in the array/slice (see above)

arrayIndexOfSmallest bbutils

Find the smallest element, in the array/slice (see above)

arrayIndexOfSmallest bbutils

Find the smallest element, in the array/slice (see above)

arrayIndexOfSmallest bbutils

Find the smallest element, in the array/slice (see above)

arrayIndexOfSmallest bbutils

Find the smallest element, in the array/slice (see above)

arrayIndexOfSmallest bbutils

Find the smallest element, in the array/slice (see above)

arrayInsert bbutils

Inserts element e at position i in a

arrayInsert bbutils

Inserts element e at position i in a

arrayInsert bbutils

Inserts element e at position i in a

arrayInsert bbutils

Inserts element e at position i in a

arrayInsert bbutils

Inserts element e at position i in a

arrayInsertFast bbutils

Inserts element e at position i in a

arrayInsertFast bbutils

Inserts element e at position i in a

arrayInsertFast bbutils

Inserts element e at position i in a

arrayInsertFast bbutils

Inserts element e at position i in a

arrayInsertFast bbutils

Inserts element e at position i in a

arrayInvert bbutils

Inverts the order of the elements in the array/slice (see above)

arrayInvert bbutils

Inverts the order of the elements in the array/slice (see above)

arrayInvert bbutils

Inverts the order of the elements in the array/slice (see above)

arrayInvert bbutils

Inverts the order of the elements in the array/slice (see above)

arrayInvert bbutils

Inverts the order of the elements in the array/slice (see above)

arrayLast bbutils

Returns the last element of the array, raises exception, iff the array is empty

arrayLast bbutils

Returns the last element of the array, returns default, iff the array is empty

arrayLast bbutils

Returns the last element of the array, raises exception, iff the array is empty

arrayLast bbutils

Returns the last element of the array, returns default, iff the array is empty

arrayLast bbutils

Returns the last element of the array, raises exception, iff the array is empty

arrayLast bbutils

Returns the last element of the array, returns default, iff the array is empty

arrayLast bbutils

Returns the last element of the array, raises exception, iff the array is empty

arrayLast bbutils

Returns the last element of the array, raises exception, iff the array is empty

arrayLast bbutils

Returns the last element of the array, returns default, iff the array is empty

arrayLast bbutils

Returns the last element of the array, returns default, iff the array is empty

arrayPrepend bbutils

Prepends e to a, i.e. inserts e at position 0. (Quite slow, O(n))

arrayPrepend bbutils

Prepends e to a, i.e. inserts e at position 0. (Quite slow, O(n))

arrayPrepend bbutils

Prepends e to a, i.e. inserts e at position 0. (Quite slow, O(n))

arrayPrepend bbutils

Prepends e to a, i.e. inserts e at position 0. (Quite slow, O(n))

arrayPrepend bbutils

Prepends e to a, i.e. inserts e at position 0. (Quite slow, O(n))

arrayPrependFast bbutils

Prepends e to a, i.e. inserts e at position 0. (Quite slow, O(n))

arrayPrependFast bbutils

Prepends e to a, i.e. inserts e at position 0. (Quite slow, O(n))

arrayPrependFast bbutils

Prepends e to a, i.e. inserts e at position 0. (Quite slow, O(n))

arrayPrependFast bbutils

Prepends e to a, i.e. inserts e at position 0. (Quite slow, O(n))

arrayPrependFast bbutils

Prepends e to a, i.e. inserts e at position 0. (Quite slow, O(n))

arrayReserveFast bbutils

Ensures that a has at least reserveLength elements

arrayReserveFast bbutils

Ensures that a has at least reserveLength elements

arrayReserveFast bbutils

Ensures that a has at least reserveLength elements

arrayReserveFast bbutils

Ensures that a has at least reserveLength elements

arrayReserveFast bbutils

Ensures that a has at least reserveLength elements

arraySlice bbutils

Extracts a array slice

arraySlice bbutils

Extracts a array slice

arraySlice bbutils

Extracts a array slice

arraySlice bbutils

Extracts a array slice

arraySlice bbutils

Extracts a array slice

BigDecimalToExtended bigdecimalmath_template

Converts a bigdecimal to an extended (may introduce rounding errors)

BigDecimalToExtended bigdecimalmath

Converts a bigdecimal to an extended (may introduce rounding errors)

BigDecimalToInt64 bigdecimalmath

Converts a bigdecimal to a native int (can overflow)

BigDecimalToLongint bigdecimalmath

Converts a bigdecimal to a native int (can overflow)

BigDecimalToStr bigdecimalmath

Converts a bigdecimal to a decimal string
The result will be fixed width format [0-9]+(.[0-9]+)?, even if the input had an exponent

BigDecimalToStr bigdecimalmath_template

Converts a bigdecimal to a decimal string
The result will be fixed width format [0-9]+(.[0-9]+)?, even if the input had an exponent

BigDecimalToT_NativeInt_ bigdecimalmath_template

Converts a bigdecimal to a native int (can overflow)

binarySearch bbutils

General binary search function. It can find an element or a lower/upper bound.
a points to the first element in the (ascending, sorted) array, b to the last, size the size of each element
compareFunction is a TBinarySearchFunction comparing the searched element to another element
compareFunctionData is the data passed to the comparison function as first argument (you can think of it as searched element)
choosen is the element that should be returned, if there are multiple matches (bsFirst, bsLast or bsAny) .
condition the comparison relation between the returned and searched element (E.g. for [bsGreater, bsEqual] the returned element satisfies compareFunction(reference, returned) <= 0.)
returns a pointer to the found match or nil if there is none.
(note that you can combine, e.g. bsGreater and bsLast, which will always return the last element, unless all are lower)

Beware of the pointers. You need to be very carefully. a and b point to the first and last elements. They are not the element, they are pointers to the location of the element in the array. If a = b, the array has one element. You need to pass a < b for empty arrays.
The first parameter of compareFunction is user defined data, so it can be anything. The second parameter is a pointer to the location of an array element. It is not the array element itself, not even on a list of pointers.
The same holds for the pointer returned by the function, i.e. it is like that second parameter.

binomial bbutils

Calculates n|k = n!/k!(n-k)!

binomialDeviation bbutils

deviation(=sqrt(variance)) of a binomial distribution

binomialExpectation bbutils

expectated value of a binomial distribution

binomialProbability bbutils

probability: P(X = k) where X is binomial distributed with n possible values (exact value calculated with binomial coefficients, )

binomialProbabilityApprox bbutils

expectated value of a binomial distribution (approximates the value with either Poisson or Moivre and Laplace, depending on the variance of the distribution) )

binomialProbabilityDeviationOf bbutils

probability: P(X >= mu + d or X <= mu - d) where X is binomial distributed with n possible values

binomialProbabilityGE bbutils

probability: P(X >= k) where X is binomial distributed with n possible values

binomialProbabilityLE bbutils

probability: P(X <= k) where X is binomial distributed with n possible values

binomialVariance bbutils

variance of a binomial distribution

binomialZScore bbutils

Z-Score of the value k in a distribution with n outcomes

charDecodeDigit bbutils

charDecodeHexDigit bbutils

charUnicodeZero xquery

compareBigDecimals bigdecimalmath_template

Compares the big decimals. Returns -1, 0 or 1 corresponding to a <, = or > b

compareBigDecimals bigdecimalmath

Compares the big decimals. Returns -1, 0 or 1 corresponding to a <, = or > b

convertTemplate pastemplate

Parses a simple pascal template.

It may contain the following commands:
{%REPEAT x, [a, b, c, ..]} .. {%END-REPEAT}
Creates several copy of the text between REPEAT and END-REPEAT while replacing x by a in the first copy, x by b in the second, ...

{%REPEAT (x, y), [(a1, a2), (b1, b2), ...]} .. {%END-REPEAT}
Creates several copy of the text between REPEAT and END-REPEAT while replacing x by a1 and y by a2 in the first copy, x by b1 and y by b2 in the second, ...

{%REPEAT} .. {%END-REPEAT}
Removes the text between REPEAT and END-REPEAT (i.e. make exactly zero copies)

{%COMPARE x =/<> y} .. {%END-COMPARE}
Only inserts the text if x=y or x<>y. Its just comparing the trimmed text

{%SPECIAL:foobar}
Calls an external callback function with the value foobar

}

coprime bbutils

Checks if two numbers are coprime

dateDecode bbutils

Encodes a date as datetime (supports negative years)

dateEncode bbutils

Encodes a date as datetime (supports negative years)

dateEncodeTry bbutils

Encodes a date as datetime (supports negative years)

dateFormat bbutils

Converts a date to a string corresponding to the given mask (same mask as dateTimeParsePartsTry)

dateFormatNew bbutils

dateFormatOld bbutils

Converts a date to a string corresponding to the given mask (same mask as dateTimeParsePartsTry)

dateIsLeapYear bbutils

dateParse bbutils

This function checks, if the date is valid.

dateParseParts bbutils

dateTimeEncode bbutils

Encodes a date time

dateTimeFormat bbutils

Converts a dateTime to a string corresponding to the given mask (same mask as dateTimeParsePartsTry)

dateTimeFormat bbutils

Converts a dateTime to a string corresponding to the given mask (same mask as dateTimeParsePartsTry)

dateTimeParse bbutils

dateTimeParseParts bbutils

Reads date/time parts from a input matching a given mask (@see dateTimeParsePartsTry)

dateTimeParsePartsTry bbutils

The uses the same mask types as FormatDate:
s or ss for a second
n or nn for a minute
h or hh for a hour
d or dd for a numerical day
m or mm for a numerical month, mmm for a short month name, mmmm for a long month name
am/pm or a/p match am/pm or a/p yy, yyyy or [yy]yy for the year. (if the year is < 90, it will become 20yy, else if it is < 100, it will become 19yy, unless you use uppercase Y instead of y)
YY, YYYY or [YY]YY for the year
z, zz, zzz, zzzz for microseconds (e.g. use [.zzzzzz] for optional ms with exactly 6 digit precision, use [.z[z[z[z[z[z]]]]]] for optional µs with up to 6 digit precision) Z for the ISO time zone (written as regular expressions, it matches 'Z | [+-]hh(:?mm)?'. Z is the only format ansichar (except mmm) matching several characters) The letter formats d/y/h/n/s matches one or two digits, the dd/mm/yy formats require exactly two.
yyyy requires exactly 4 digits, and [yy]yy works with 2 or 4 (there is also [y]yyy for 3 to 4). The year always matches an optional - (e.g. yyyy also matches -0012, but not -012)
Generally [x] marks the part x as optional (it tries all possible combinations, so you shouldn't have more than 10 optional parts)
x+ will match any additional amount of x. (e.g. yy -> 2 digit year, yy+ -> at least 2 digit year, yyyy -> 4 digit year, [yy]yy -> 2 or 4 digit year) (mmm+ for short or long dates)
"something" can be used to match the input verbatim
whitespace is matched against whitespace (i.e. [ #9#10#13]+ matches [ #9#10#13]+) The function works if the string is latin-1 or utf-8, and it also supports German month names

There are old and new functions, because the signature has changed from double to int. Do not use the OLD functions unless you are porting existing code.

dateWeekOfYear bbutils

dateWeekOfYear bbutils

Week of year

decodeURL internetaccess

decodeURL internetaccess

Splits a url into parts

defaultInternet simpleinternet

defaultInternet internetaccess

This provides a thread-safe default internet

defaultQueryEngine simpleinternet

defaultQueryEngine xquery

div int65math

div int65math

div int65math

div int65math

div bigdecimalmath

Standard operator binary div
The result is an integer, so 1.23E3 / 7 will be 175

div int65math

div bigdecimalmath_template

Standard operator binary div
The result is an integer, so 1.23E3 / 7 will be 175

divide bigdecimalmath

Wrapper around divideModNoAlias, ignoring the calculated remainder

divide bigdecimalmath_template

Wrapper around divideModNoAlias, ignoring the calculated remainder

divideModNoAlias bigdecimalmath_template

Universal division/modulo function. Calculates the quotient and remainder of a / b.
bddfKeepDividentPrecision: calculates as least as many non-zero digit of the quotient as the divident (1st arg) has
bddfKeepDivisorPrecision: calculates as least as many non-zero digit of the quotient as the divisor (2nd arg) has
bddfAddHiddenDigit: Calculates an additional digit for rounding, which will not be displayed by BigDecimalToStr
bddfFillIntegerPart: Calculate at least all digits of the integer part of the quotient, independent of the precision of the input
bddfNoFractionalPart: Do not calculate the fractional part of the quotient (remember that a bigdecimal is a scaled integer. So bfdfFillIntegerPart ensures that the result has not less digits than an integer division (necessary in case of an exponent > 0) and bfdfKillFractions that the result has not more digits than an integer division (in case of an exponent < 0) )
not all flag combinations were tested

divideModNoAlias bigdecimalmath

Universal division/modulo function. Calculates the quotient and remainder of a / b.
bddfKeepDividentPrecision: calculates as least as many non-zero digit of the quotient as the divident (1st arg) has
bddfKeepDivisorPrecision: calculates as least as many non-zero digit of the quotient as the divisor (2nd arg) has
bddfAddHiddenDigit: Calculates an additional digit for rounding, which will not be displayed by BigDecimalToStr
bddfFillIntegerPart: Calculate at least all digits of the integer part of the quotient, independent of the precision of the input
bddfNoFractionalPart: Do not calculate the fractional part of the quotient (remember that a bigdecimal is a scaled integer. So bfdfFillIntegerPart ensures that the result has not less digits than an integer division (necessary in case of an exponent > 0) and bfdfKillFractions that the result has not more digits than an integer division (in case of an exponent < 0) )
not all flag combinations were tested

equalNamespaces simplehtmltreeparser

equalNamespaces simplehtmltreeparser

eUTF8 bbutils

even bigdecimalmath_template

Checks if v is even. A number with fractional digits is never even (and neither odd, which is odd)

even bigdecimalmath

Checks if v is even. A number with fractional digits is never even (and neither odd, which is odd)

eWindows1252 bbutils

existPropertyWithValue simplehtmlparser

factorial bbutils

Calculates i!

fastpower2to bigdecimalmath

Calculates 2 ** exp exactly, with exp being an integer (faster than power for negative exp)

fastpower2to bigdecimalmath_template

Calculates 2 ** exp exactly, with exp being an integer (faster than power for negative exp)

fastpower5to bigdecimalmath_template

Calculates 5 ** exp exactly, with exp being an integer (faster than power for negative exp)

fastpower5to bigdecimalmath

Calculates 5 ** exp exactly, with exp being an integer (faster than power for negative exp)

fileMoveReplace bbutils

Moves oldname to newname, replacing newname if it exists

fileNameExpand bbutils

Expands a path to an absolute path, if it not already is one

fileNameExpandToURI bbutils

Expands a path to an absolute path starting with file://

fileSaveSafe bbutils

finalizeFunctions xquery__functions

findTagPropertyValueWithProperty simplehtmlparser

freeAnnotations xquery

If you use the functions in this unit from different threads, you have to call freeThreadVars before the thread terminates to prevent memory leaks
This also calls freeThreadVars of the xquery and internetaccess units

If you use the default query engine from different threads, you have to call freeThreadVars. before the thread terminates to prevent memory leaks
This also calls freeThreadVars of internetaccess

If you use the procedural interface from different threads, you have to call freeThreadVars before the thread terminates to prevent memory leaks

gcd bbutils

Calculates the greatest common denominator

gcd bigdecimalmath_template

Calculates the greatest common denominator (only makes sense for positive integer input)

gcd bbutils

Calculates the greatest common denominator

gcd bbutils

Calculates the greatest common denominator

gcd bigdecimalmath

Calculates the greatest common denominator (only makes sense for positive integer input)

getDigit bigdecimalmath

Returns the digit-th digit of v.
Last integer digit is digit 0, digits at negative indices are behind the decimal point.

getDigit bigdecimalmath_template

Returns the digit-th digit of v.
Last integer digit is digit 0, digits at negative indices are behind the decimal point.

getNaN xquery

getNegInf xquery

getPosInf xquery

getProperty simplexmlparser

getProperty simplehtmlparser

guessExtractionKind extendedhtmlparser

guessFormat simplehtmltreeparser

guessType internetaccess

Guesses the type of a given string

E.g. for 'http://' it returns rtRemoteURL, for '/tmp' rtFile and for '<abc/>' rtXML.
Internally used by simpleinternet.retrieve to determine how to actually retrieve the data.

htmlElementIsCDATA simplehtmlparser

htmlStrEscape simplehtmltreeparser

httpRequest internetaccess

Make a HTTP request to a certain url, sending the data in rawdata unmodified to the server.

httpRequest internetaccess

Make a HTTP GET request to a certain url.

httpRequest internetaccess

Make a HTTP POST request to a certain url, sending the data in rawpostdata unmodified to the server.

httpRequest internetaccess

Make a HTTP POST request to a certain url, sending the data in postdata to the server, after url encoding all name=value pairs of it.

httpRequest simpleinternet

httpRequest simpleinternet

httpRequest simpleinternet

httpRequest simpleinternet

Make a http request to an address given in an IXQValue.

httpRequest simpleinternet

ignore bbutils

Ignores the parameter to suppress warnings

ignore bbutils

Ignores the parameter to suppress warnings

ignore xquery

ignore bbutils

Ignores the parameter to suppress warnings

ignore bbutils

Ignores the parameter to suppress warnings

ignore bbutils

Ignores the parameter to suppress warnings

ignore bbutils

Ignores the parameter to suppress warnings

ignore xquery

ignore xquery

ignore xquery

initializeFunctions xquery__functions

Int65ToStr int65math

intBound bbutils

intBound bbutils

intFactor bbutils

Given a number n, this procedure calculates the maximal integer e, so that n = pˆe * r

intLog bbutils

log_b n rounded down (= number of digits of n in base b - 1)

intLog10 bbutils

log 10 rounded down (= number of digits in base 10 - 1)

intSieveDivisorCount bbutils

This calculates the number of divisors: divcount[i] := |{1 <= j <= i | i mod j = 0}| for all i <= n.
Speed: 10ˆ7 in 5s

intSieveEulerPhi bbutils

This calculates the euler phi function totient[i] := phi(i) = |{1 <= j <= i | gcd(i,j) = 0}| for all i <= n.
It uses a sieve approach and is quite fast (10ˆ7 in 3s)
You can also use it to calculate all primes (i is prime iff phi(i) = i - 1)

intSqrt bbutils

intSqrt bbutils

isInt64 bigdecimalmath_template

Returns true iff v has no fractional digits and can be stored within an int64

isInt64 bigdecimalmath

Returns true iff v has no fractional digits and can be stored within an int64

isIntegral bigdecimalmath_template

Returns true iff v has no fractional digits

isIntegral bigdecimalmath

Returns true iff v has no fractional digits

isInvalidUTF8 simplehtmltreeparser

isLongint bigdecimalmath_template

Returns true iff v has no fractional digits and can be stored within an longint (32 bit integer)

isLongint bigdecimalmath

Returns true iff v has no fractional digits and can be stored within an longint (32 bit integer)

isNegInf xquery

isPosInf xquery

isSignedXQFloat xquery

isValidModifiedUTF8 bbjniutils

isZero bigdecimalmath_template

Returns true iff the bigdecimal is zero

isZero bigdecimalmath

Returns true iff the bigdecimal is zero

jsonStrEscape xquery

Returns a "..." string for use in json (internally used)

lcm bigdecimalmath_template

Calculates the least common multiple

lcm bbutils

Calculates the least common multiple (just a*b div gcd(a,b), so it can easily overflow)

lcm bigdecimalmath

Calculates the least common multiple

makeMethod bbutils

mod bigdecimalmath_template

Standard operator binary mod
Calculates the remainder of an integer division a - (a div b) * b

mod bigdecimalmath

Standard operator binary mod
Calculates the remainder of an integer division a - (a div b) * b

mod int65math

modPow bbutils

Calculates iˆe mod m in O(log(e)) and never exceeding m

modPow bbutils

Calculates iˆe mod m in O(log(e)) and never exceeding m

namespaceGetURL simplehtmltreeparser

needInternetAccess simpleinternet

needJ bbjniutils

nodeNameHash simplehtmltreeparser

normalize bigdecimalmath_template

Removes leading (pre .) and trailing (post .) zeros

normalize bigdecimalmath

Removes leading (pre .) and trailing (post .) zeros

ObjToUInt bbutils

odd bigdecimalmath_template

Checks if v is odd. A number with fractional digits is never odd (only weird)

odd bigdecimalmath

Checks if v is odd. A number with fractional digits is never odd (only weird)

parseHTML simplehtmlparser

This parses html data Notice: You can pass nil for every callback function and if one of them returns prStop, the parsing is aborted.

parseJSON xquery_json

parseML simplehtmlparser

This parses html/xml data Notice: You can pass nil for every callback function and if one of them returns prStop, the parsing is aborted.

parseXML simplexmlparser

Perhaps this parses xml data, perhaps it doesn't. Who knows...

pcharStartEqual simplehtmlparser

power bigdecimalmath_template

Calculates v ** exp, with exp being an integer

power bigdecimalmath

Calculates v ** exp, with exp being an integer

precision bigdecimalmath

How many non-zero digits the number contains

precision bigdecimalmath_template

How many non-zero digits the number contains

procedureToMethod bbutils

process simpleinternet

Processes data with a certain query.

data can be an url, or a html/xml file in a string, like in retrieve.

query can be a XPath/XQuery expression, like in process('http://www.google.de', '//title');.

Or query can be a html template like process('http://www.google.de', '<title><t:s>result:=text()</t:s></title>'); The advantage of such templates is that they can return several variables at once and a canonical representation of the same data on different web sites. To get a list of all variables of the last query you can use processedVariables.

This function returns an IXQValue value, which is a variant for XQuery expression. If you want a string value, you can convert it like process(...).toString. Or if you want to access a retrieved node directly, you can use process(..).toNode.
It can also contain multiple values, which can be access like for x in process(..), where x is another IXQValue.

The global function processedTree returns a tree representation of the last processed data string.

processedTree simpleinternet

Returns a tree representation of the last processed html/xml data
Might return nil

processedVariables simpleinternet

Returns all variable assignments during the last query

PtrToUInt bbutils

query xquery

Evaluates an XQuery 3 query using the defaultQueryEngine.

For example query('1 to 10') to get all numbers from 1 to 10. Or query('doc("http://example.org")//title') to get the title of a webpage.

query xquery

Evaluates an XQuery 3 query using the defaultQueryEngine. All values in vs are available as $_1,$_2, $_3, ... query xquery Evaluates an XQuery 3 query using the defaultQueryEngine. All values in vs are available as$_1, $_2,$_3, ...

For example query('$_1 to$_2', ['10', '100']) to get all numbers from 10 to 100.
Or query('doc($_1)//title', ['http://example.org']) to get the title of a webpage. Or query('form(doc($_1)//form, {"q": $_2})', ['http://google.com', 'search term']).retrieve() to fill in a formular on a webpage/search something on Google. raiseFORG0001InvalidConversion xquery raiseFOTY0013TypeError xquery raiseXPTY0004TypeError xquery raiseXQEvaluationError xquery regexprreencode xquery__regex registerModuleFile xquery_module_file Registers the module to the XQuery engine registerModuleMath xquery_module_math Registers the module to the XQuery engine repairModifiedUTF8 bbjniutils requiredArgCount xquery Escapes for an URL (internally used) Checks the length of the args array (internally used) requiredArgType xquery retrieve simpleinternet Retrieve data from any url. It is really simple to use, you pass the desired url as single parameter and get the data of the url. It supports: round bigdecimalmath_template Universal rounding function Rounds v to the precision of a certain digit, subject to a certain rounding mode. Positive toDigit will round to an integer with toDigit trailing zeros, negative toDigit will round to a decimal with -toDigit numbers after the decimal point round bigdecimalmath Universal rounding function Rounds v to the precision of a certain digit, subject to a certain rounding mode. Positive toDigit will round to an integer with toDigit trailing zeros, negative toDigit will round to a decimal with -toDigit numbers after the decimal point roundInRange bigdecimalmath Given mi < exact < ma, truncate exact to a bigdecimal result, such that mi < result < ma result has the minimal number of non-zero digits | result - exact | is minimized roundInRange bigdecimalmath_template Given mi < exact < ma, truncate exact to a bigdecimal result, such that mi < result < ma result has the minimal number of non-zero digits | result - exact | is minimized SetCodePage bbutils no-op function, so not every SetCodePage has to be wrapped in ifdefs setOne bigdecimalmath Sets the bigdecimal to 1 setOne bigdecimalmath_template Sets the bigdecimal to 1 setProperty simplexmlparser setZero bigdecimalmath Sets the bigdecimal to 0 setZero bigdecimalmath_template Sets the bigdecimal to 0 shift10 bigdecimalmath Calculates a decimal shift: v := v * 10ˆshift shift10 bigdecimalmath_template Calculates a decimal shift: v := v * 10ˆshift shifted10 bigdecimalmath Calculates a decimal shift: result := v * 10ˆshift shifted10 bigdecimalmath_template Calculates a decimal shift: result := v * 10ˆshift sqrt bigdecimalmath_template Calculates the square root of v, to precision digits after the decimal point Not much tested sqrt bigdecimalmath Calculates the square root of v, to precision digits after the decimal point Not much tested stableSort bbutils general stable sort functions for arrays (modifying the array inline and returning it) stableSort bbutils General stable sort function a is the first element in the array to sort, and b is the last. size is the size of every element compareFunction is a function which compares two pointer to elements of the array, if it is nil, it will compare the raw bytes (which will correspond to an ascending sorting of positive integers). Only the > 0 and <= 0 return values are discerned. (i.e. you can safely use a comparison function that e.g. only returns +7 and 0) Currently it uses a combination of merge and insert sort. Merge requires the allocation of additional memory. stableSort bbutils strAfter bbutils If the string s has the form '...sepEND' it returns 'END' strAfterLast bbutils If the string s has the form '...sepEND' it returns 'END' strAfterLast bbutils If the string s has the form '...sepEND' it returns 'END'. E.g. for /foo/bar it returns bar with AllowDirectorySeparators strAnsi2UnicodeMoveProc bbutils converts unicode pages and latin1 to utf16. The signature matches the function of fpc's widestringmanager, so this function replaces cwstring. len is in bytes strAppendIfMissing bbutils strBefore bbutils If the string s has the form 'STARTsep...' it returns 'START' strBeforeLast bbutils If the string s has the form 'STARTsep...' it returns 'START' strBeforeLast bbutils If the string s has the form 'STARTsep...' it returns 'START'. E.g. for /foo/bar it returns /foo with AllowDirectorySeparators do strBeginsWith bbutils Tests if the p starts with expectedStart (p is null-terminated) strBeginsWith bbutils Tests if the strToBeExaminated starts with expectedStart strBetween bbutils If the string s has the form '...fromMIDDLEtill...' it returns 'MIDDLE' strChangeEncoding bbutils strCompareClever bbutils Case sensitive, clever comparison, that basically splits the string into lexicographical and numerical parts and compares them accordingly strContains bbutils Tests if searched exists in str case-sensitive (Attention: opposite parameter to pos) strContains bbutils Tests if searched exists in str case-sensitive (Attention: opposite parameter to pos) strContains bbutils Tests if searched exists in str case-sensitive (Attention: opposite parameter to pos) strContains bbutils Tests if searched exists in str case-sensitive (Attention: opposite parameter to pos) strConvert bbutils Converts a string from one encoding to another. It primarily converts between latin-1 and utf-8 without needing a widestring manager. It performs the conversion directly without converting to UTF-16, which should be much faster than fpc's default conversions. But there are no low-level optimizations For other encodings it falls back to the moveprocs (which allows to store utf-16/32 in RawByteString) and SetCodePage strConvertFromUtf8 bbutils Converts a utf-8 string to the encoding from strConvertToUtf8 bbutils Returns a utf-8 RawByteString from the string in encoding from strCopyFrom bbutils Returns the substring of s containing all characters after start (including s[start] strCount bbutils Counts all occurrences of searched in searchIn (case sensitive) strCount bbutils Counts all occurrences of searched in searchIn (case sensitive) strDecodeHex bbutils Decodes a binary hex string like 202020 where every pair of hex digits corresponds to one char (deprecated, use strUnescapeHex) strDecodeHTMLEntities bbutils This decodes all html entities to the given encoding. If strict is not set it will ignore wrong entities (so e.g. X&Y will remain X&Y and you can call the function even if it contains rogue &). strDecodeHTMLEntities bbutils This decodes all html entities to the given encoding. If strict is not set it will ignore wrong entities (so e.g. X&Y will remain X&Y and you can call the function even if it contains rogue &). strDecodeUTF16Character bbutils strDecodeUTF8Character bbutils Returns the unicode code point of the utf-8 character starting at source. Returns a negative value if the character is invalid. strDecodeUTF8Character bbutils Returns the unicode code point of the utf-8 character starting at str[curpos] and increments curpos to the next utf-8 character. Returns a negative value if the character is invalid. strDecodeUTF8Character bbutils Returns the unicode code point of the utf-8 character starting at source and decrements remainingLength to the next utf-8 character. Returns a negative value if the character is invalid. strDup bbutils Creates count copies of rep strEncodeHex bbutils Encodes to a binary hex string like 202020 where every pair of hex digits corresponds to one char (deprecated, use strEscapeToHex) strEncodingFromBOMRemove bbutils Gets the encoding from an unicode bom and removes it strEncodingFromContentType simplehtmltreeparser strEndsWith bbutils Tests if the strToBeExaminated ends with expectedEnd strEqual bbutils Tests if the strings are case-insensitive equal (same length and same characters) strEscape bbutils Replace all occurences of x \in toEscape with escapeChar + x strEscapeRegex bbutils Returns a regex matching s strEscapeToHex bbutils Replace all occurences of x \in toEscape with escape + hex(ord(x)) strFromInt bbutils Creates a string to display an integer. The result will have at least displayLength digits (digits, not characters, so -1 with length 2, will become -02). strFromPchar bbutils Returns the first l bytes of p (copies them so O(n)) strFromPtr bbutils Creates a string to display the value of a pointer (e.g. 0xDEADBEEF) strFromSIze bbutils converts a size (measured in bytes) to a string (e.g. 1025 -> 1 KiB) strGetUnicodeCharacter bbutils Get unicode character character in a certain encoding strGetUnicodeCharacterUTF bbutils strGetUnicodeCharacterUTFLength bbutils striAfter bbutils If the string s has the form '...sepEND' it returns 'END' striAfterLast bbutils If the string s has the form '...sepEND' it returns 'END' striBefore bbutils If the string s has the form 'STARTsep...' it returns 'START' striBeforeLast bbutils If the string s has the form 'STARTsep...' it returns 'START' striBeginsWith bbutils Tests if the p starts with expectedStart (p is null-terminated) striBeginsWith bbutils Tests if the strToBeExaminated starts with expectedStart striBetween bbutils If the string s has the form '...fromMIDDLEtill...' it returns 'MIDDLE' striCompareClever bbutils Case insensitive, clever comparison, that basically splits the string into lexicographical and numerical parts and compares them accordingly striContains bbutils Tests if searched exists in str case-insensitive (Attention: opposite parameter to pos) striContains bbutils Tests if searched exists in str case-insensitive (Attention: opposite parameter to pos) striEndsWith bbutils Tests if the strToBeExaminated ends with expectedEnd striEqual bbutils Tests if the strings are case-insensitive equal (same length and same characters) striIndexOf bbutils Searchs searched in str case-insensitive (Attention: opposite parameter to pos) striIndexOf bbutils Searchs searched in str case-insensitive (Attention: opposite parameter to pos) striLastIndexOf bbutils Searchs the last occurrence of searched in str, case-insensitive, returns 0 on no occurrence (Attention: opposite parameter to pos) striLastIndexOf bbutils Searchs the last occurrence of searched in str, case-insensitive, returns 0 on no occurrence (Attention: opposite parameter to pos) strIndexOf bbutils Searchs searched in str case-sensitive (Attention: opposite parameter to pos) strIndexOf bbutils Searchs searched in str case-sensitive (Attention: opposite parameter to pos) strIndexOf bbutils Searchs searched in str case-sensitive (Attention: opposite parameter to pos) strIndexOf bbutils Searchs searched in str case-sensitive (Attention: opposite parameter to pos) StringCodePage bbutils strIsAbsoluteURI bbutils Checks if s is an absolute uri (i.e. has a [a-zA-Z][a-zA-Z0-9+-.]:// prefix) strJoin bbutils Joins all string list items to a single string separated by sep. If limit is set, the string is limited to abs(limit) items. if limit is positive, limitStr is appended; if limitStr is negative, limitStr is inserted in the middle strJoin bbutils Joins all string list items to a single string separated by sep. If limit is set, the string is limited to abs(limit) items. if limit is positive, limitStr is appended; if limitStr is negative, limitStr is inserted in the middle strLastIndexOf bbutils Searchs the last occurrence of searched in str, case-sensitive, returns 0 on no occurrence (Attention: opposite parameter to pos) strLastIndexOf bbutils Searchs the last occurrence of searched in str, case-sensitive, returns 0 on no occurrence (Attention: opposite parameter to pos) strLastIndexOf bbutils Searchs the last occurrence of searched in str, case-sensitive, returns 0 on no occurrence (Attention: opposite parameter to pos) strLastIndexOf bbutils Searchs the last occurrence of searched in str, case-sensitive, returns 0 on no occurrence (Attention: opposite parameter to pos) strlBeginsWith bbutils Test if p begins with expectedStart (__STRICT_HELP__, case-sensitive) strLengthUtf8 bbutils strLengthUtf8 bbutils length of an utf8 string strlEqual bbutils Tests if the strings are case-sensitive equal (same length and same characters) (null-terminated, stops comparison when meeting #0 ) strlEqual bbutils Tests if the strings are case-sensitive equal (same length and same characters) strlEqual bbutils Tests if the strings are case-sensitive equal (same length and same characters) (null-terminated, stops comparison when meeting #0 ) strliBeginsWith bbutils Test if p begins with expectedStart (__STRICT_HELP__, case-insensitive) strliEqual bbutils Tests if the strings are case-insensitive equal (same length and same characters) (null-terminated, stops comparison when meeting #0 ) strliEqual bbutils Tests if the strings are case-insensitive equal (same length and same characters) strliEqual bbutils Tests if the strings are case-insensitive equal (same length and same characters) (null-terminated, stops comparison when meeting #0 ) strlmove bbutils Copies min(sourceLen, destLen) characters from source to dest and returns dest strLoadFromFile bbutils loads a file as string. The filename is directly passed to the fpc rtl and uses the system encoding strLoadFromFileUTF8 bbutils loads a file as string. The filename should be encoded in utf-8 strLowerCaseSpecialUTF8 bbutils This function converts codePoint to the corresponding lowercase codepoint according to the unconditional cases of SpecialCasing.txt of Unicode 8. It cannot be used to convert a character to lowercase, as SpecialCasing.txt is not a map from normal characters to their lowercase variants. It is a collection of special characters that do not have an ordinary lowercase variant and are converted to something else. The function signature is preliminary and likely to change. strlsEqual bbutils Tests if the strings are case-sensitive equal (same length and same characters) (strict-length, can continue comparison after #0) strlsEqual bbutils Tests if the strings are case-sensitive equal (same length and same characters) (strict-length, can continue comparison after #0) strlsequal bbutils strlsiEqual bbutils Tests if the strings are case-insensitive equal (same length and same characters) (strict-length, can continue comparison after #0) strlsiEqual bbutils Tests if the strings are case-insensitive equal (same length and same characters) (strict-length, can continue comparison after #0) strlsiIndexOf bbutils Searchs searched in str case-insensitive (Attention: opposite parameter to pos) (strict length, this function can find #0-bytes) strlsiLastIndexOf bbutils Searchs searched in str, case-insensitive, returns -1 on no occurrence (Attention: opposite parameter to pos) (strict length, this function can find #0-bytes) strlsIndexOf bbutils Searchs searched in str case-sensitive (Attention: opposite parameter to pos) (strict length, this function can find #0-bytes) strlsIndexOf bbutils Searchs searched in str case-sensitive (Attention: opposite parameter to pos) (strict length, this function can find #0-bytes) strlsLastIndexOf bbutils Searchs searched in str, case-sensitive, returns -1 on no occurrence (Attention: opposite parameter to pos) (strict length, this function can find #0-bytes) strlsLastIndexOf bbutils Searchs searched in str, case-sensitive, returns -1 on no occurrence (Attention: opposite parameter to pos) (strict length, this function can find #0-bytes) strlTrim bbutils Removes all occurrences of trimCharacter from the left/right side of the string It will move the pointer and change length, not modifying the memory pointed to strlTrimLeft bbutils Removes all occurrences of trimCharacter from the left/right side of the string It will move the pointer and change length, not modifying the memory pointed to strlTrimRight bbutils Removes all occurrences of trimCharacter from the left/right side of the string It will move the pointer and change length, not modifying the memory pointed to strMoveRef bbutils Like move: moves count strings from source memory to dest memory. Keeps the reference count intact. Size is count of strings * sizeof(string)! strNormalizeLineEndings bbutils Replaces all #$D#$A, #$D #$85, #$85, #\$2028, or #13 by #10. Experimental, behaviour might change in future

strNormalizeLineEndingsUTF8 bbutils

Prepends expectedStart, if s does not starts with expectedStart

strPrependIfMissing bbutils

Appends expectedEnd, if s does not end with expectedEnd

strRemoveFileURLPrefix bbutils

Removes a file:// prefix from filename if it is there

strResolveURI bbutils

Returns a absolute uri for a uri relative to the uri base.
E.g. strResolveURI('foo/bar', 'http://example.org/abc/def') returns 'http://example.org/abc/foo/bar'
Or. strResolveURI('foo/bar', 'http://example.org/abc/def/') returns 'http://example.org/abc/def/foo/bar'
base may be relative itself (e.g. strResolveURI('foo/bar', 'test/') becomes 'test/foo/bar')

strReverse bbutils

reverses a string. Assumes the encoding is utf-8

strRpos bbutils

Searchs the last index of c in s

strSaveToFile bbutils

saves a string as file. The filename is directly passed to the fpc rtl and uses the system encoding

strSaveToFileUTF8 bbutils

saves a string as file. The filename should be encoded in utf-8

strSimilarity bbutils

Levenshtein distance between s and t (i.e. the minimal count of characters to change/add/remove to convert s to t). O(n**2) time, O(n) space

strSlice bbutils

Returns a string with all characters between start and last (including start, last)

strSlice bbutils

Returns a string with all characters between first and last (including first, last)

strSplit bbutils

Splits the string s into the array splitted at every occurrence of sep

strSplit bbutils

Splits the string remainingPart into two parts at the first position of separator, the first is assign to firstPart, the second one is again assign to remainingPart

strSplit bbutils

Splits the string s into the array splitted at every occurrence of sep

strSplitGet bbutils

Splits the string remainingPart into two parts at the first position of separator, the first part is returned as function result, the second one is again assign to remainingPart (If remainingPart does not contain separator, it returns remainingPart and sets remainingPart := '')

strSplitGetBetweenBrackets bbutils

strSplitGetUntilBracketClosing bbutils

StrToBigDecimal bigdecimalmath_template

Converts a decimal string to a bigdecimal.
Supports standard decimal notation, like -123.456 or 1E-2 (-?[0-9]+(.[0-9]+)?([eE][-+]?[0-9]+)) Raises an exception on invalid input.

StrToBigDecimal bigdecimalmath

Converts a decimal string to a bigdecimal.
Supports standard decimal notation, like -123.456 or 1E-2 (-?[0-9]+(.[0-9]+)?([eE][-+]?[0-9]+)) Raises an exception on invalid input.

StrToBoolDef bbutils

Converts a str to a bool (for fpc versions previous 2.2)

StrToInt65 int65math

strTrim bbutils

strTrimAndNormalize bbutils

Replaces all #13#10 or #13 by #10

strTrimLeft bbutils

Removes all occurrences of trimCharacter from the left/right side of the string

strTrimRight bbutils

strUnescapeHex bbutils

Replace all occurences of escape + XX with chr(XX)

strUnicode2AnsiMoveProc bbutils

converts utf16 to other unicode pages and latin1. The signature matches the function of fpc's widestringmanager, so this function replaces cwstring. len is in chars.

strUpperCaseSpecialUTF8 bbutils

This function converts codePoint to the corresponding uppercase codepoint according to the unconditional cases of SpecialCasing.txt of Unicode 8.
It cannot be used to convert a character to uppercase, as SpecialCasing.txt is not a map from normal characters to their uppercase variants. It is a collection of special characters that do not have an ordinary uppercase variant and are converted to something else. (e.g. ß -> SS)
The function signature is preliminary and likely to change.

strWrap bbutils

strWrapSplit bbutils

SwapEndian bbutils

SwapEndian bbutils

Calls proc in an new thread

Calls proc in an new thread

Calls proc in an new thread

timeFormat bbutils

Converts a time to a string corresponding to the given mask (same mask as dateTimeParsePartsTry)

timeFormatNEW bbutils

timeParse bbutils

This function checks, if the time is valid.

timeParseParts bbutils

treeElementAsString xquery

truncToInt65 int65math

TryStrToBigDecimal bigdecimalmath_template

Converts a decimal string to a bigdecimal.
Supports standard decimal notation, like -123.456 or 1E-2 (-?[0-9]+(.[0-9]+)?([eE][-+]?[0-9]+))

TryStrToBigDecimal bigdecimalmath

Converts a decimal string to a bigdecimal.
Supports standard decimal notation, like -123.456 or 1E-2 (-?[0-9]+(.[0-9]+)?([eE][-+]?[0-9]+))

TryStrToInt65 int65math

UIntToObj bbutils

UIntToPtr bbutils

unequal bbutils

Checks if all elements are pairwise unequal

unequal bbutils

Checks if all elements are pairwise unequal

unequal bbutils

Checks if all elements are pairwise unequal

unequal bbutils

Checks if all elements are pairwise unequal

unequal bbutils

Checks if all elements are pairwise unequal

unequal bbutils

Checks if all elements are pairwise unequal

unequal bbutils

Checks if all elements are pairwise unequal

unequal bbutils

Checks if all elements are pairwise unequal

unequal bbutils

Checks if all elements are pairwise unequal

unequal bbutils

Checks if all elements are pairwise unequal

unequal bbutils

Checks if all elements are pairwise unequal

unequal bbutils

Checks if all elements are pairwise unequal

urlHexDecode xquery

widestrlmove bbutils

Copies min(sourceLen, destLen) characters from source to dest and returns dest

wregexprClone xquery__regex

wregexprExtract xquery__regex

wregexprFree xquery__regex

wregexprMatches xquery__regex

wregexprParse xquery__regex

wregexprParse xquery__regex

wregexprParseInternal xquery__regex

xmlStrEscape simplehtmltreeparser

xmlStrWhitespaceCollapse simplehtmltreeparser

xpathRangeDefinition xquery

Calculates starting position / length from a range definition (checks for things like NaN, INF, ...) (internally used)

xqfloatRounded xquery

xqFunctionAnalyze_String xquery__regex

xqFunctionConcat xquery

xqFunctionExtract xquery__regex

xqFunctionMatches xquery__regex

xqFunctionReplace xquery__regex

xqFunctionTokenize xquery__regex

xqgetTypeInfo xquery

xqvalue xquery

Creates a node TXQValue

xqvalue xquery

Raises an exception (to prevent xquery(TDateTime) from using xquery(float))

xqvalue xquery

Creates a string IXQValue

xqvalue xquery

Creates a sequence

xqvalue xquery

Creates a sequence of untyped strings

xqvalue xquery

Creates a sequence of strings (does *not* free the list)

xqvalue xquery

Creates an integer IXQValue

xqvalue xquery

Creates an boolean IXQValue

xqvalue xquery

Creates an undefined/empty-sequence IXQValue

xqvalue xquery

Creates an BigDecimal IXQValue

xqvalue xquery

Creates an BigDecimal IXQValue

xqvalue xquery

Creates an integer IXQValue

xqvalueAndPlaceholder xquery

xqvalueArray xquery

xqvalueAtomize xquery

xqvalueCastableAs xquery

xqvalueCastAs xquery

xqvalueDeep_equal xquery

xqvalueFalse xquery

Creates an boolean IXQValue

xqvalueInstanceOf xquery

xqvalueMoveNoRefCount xquery

Assigns source to dest without updating ref counts
This can be much faster, but will cause a crash, unless the reference count is corrected later, e.g. by xqvalueVaporize on source or dest.

xqvalueOrPlaceholder xquery

xqvalueSeqConstruct xquery

Adds a value to an implicit sequence list in result, i.e. you call it multiple times and the result becomes a sequence of all the add values.
For the first call result and seq must be nil.
The point is that it only creates a sequence if there are multiple values, and it is especially fast, if you do not expect multiple values.

xqvalueSeqSqueeze xquery

Squeezes an IXQValue (single element seq => single element, empty seq => undefined)

xqvalueSeqSqueezed xquery

Creates an IXQValue from a list sequence (assume it FREEs the list)

xqvalueTrue xquery

Creates an boolean IXQValue

xqvalueVaporize xquery

_OP_ bigdecimalmath_template

Generated by PasDoc 0.14.0.