Saves a png image from a memory buffer.
declare function save cdecl alias "png_save" ( byref filename as const string, byval img as const FB. IMAGE ptr ) as integer
Scales each axis of the matrix by scalar
declare sub Scale( byref scalar as single )
performs the Scale2X algorithm on an image.
declare sub Scale2X( byref dst as FB. IMAGE ptr = 0, byref src as const FB. IMAGE ptr, byref positx as integer, byref posity as integer )
Seeks to a position in the file.
declare property seek( byval poz as longint )
is deprecated, use fbextPP_SeqCat instead.
# define FBEXT_PP_SEQ_CAT( seq ) fbextPP_SeqCat(seq)
is deprecated, use fbextPP_SeqForEach instead.
# define FBEXT_PP_SEQ_FOREACH( m_, data_, seq_ ) fbextPP_SeqForEach(m_, data_, seq_)
expands to a concatenation of all of the elements in the sequence seq.
# define fbextPP_SeqCat( seq ) fbextPP_If(fbextPP_Dec(fbextPP_SeqSize(seq)), fbextPP_SeqCat_Multi, fbextPP_SeqCat_Single )(seq)
expands to the concatenation of all of the elements of the sequence seq, joined together by glue.
# define fbextPP_SeqCatWithGlue( seq, glue ) FBEXT_PP_TUPLE_ELEM(2, 0, FBEXT_PP_SEQ_FOLDLEFT(fbextPP_SeqCatWithGlue_O, (FBEXT_PP_SEQ_HEAD(seq), glue), FBEXT_PP_SEQ_TAIL(seq)))
Expands to the value of a certain element in a sequence.
# define fbextPP_SeqElem( i, seq ) fbextPP_SeqElem__I(fbextPP_SeqElem__##i seq(__))
Enumerates the elements of a sequence.
# define fbextPP_SeqEnum( seq ) FBEXT_PP_SEQ_FOREACHI(fbextPP_SeqEnum__M, FBEXT_PP_DEC(FBEXT_PP_SEQ_SIZE(seq)), seq)
expands to a sequence of the first n number of elements of the sequence seq.
# define fbextPP_SeqFirstN( n, seq ) FBEXT_PP_SEQ_FOLDLEFT( fbextPP_SeqFirstN__M, FBEXT_PP_EMPTY(), FBEXT_PP_CAT(fbextPP_TupleElem__2__0, FBEXT_PP_SEQ_SPLIT(n, seq(__))) )
Expands a macro returning a new state for each element in a sequence.
# define fbextPP_SeqFoldLeft( op, state, seq ) fbextPP_Repeat(fbextPP_SeqSize(seq), fbextPP_SeqFoldLeft__L, op) state fbextPP_Repeat(fbextPP_SeqSize(seq), fbextPP_SeqFoldLeft__R, seq)
Expands a macro returning a new state for each element in a sequence.
# define fbextPP_SeqFoldRight( op, state, seq ) FBEXT_PP_REPEAT(FBEXT_PP_SEQ_SIZE(SEQ), fbextPP_SeqFoldRight__L, op) state FBEXT_PP_SEQ_FOREACHI(fbextPP_SeqFoldRight__R, seq, seq)
expands to repeated expansions of the user-defined macro m_, passing them each element of the sequence seq_, in order, along with user data data_.
# define fbextPP_SeqForEach( m_, data_, seq_ ) fbextPP_Repeat(fbextPP_SeqSize(seq_), fbextPP_SeqForEach_M, (m_, data_, seq_))
Expands a macro for every element in a sequence.
# define fbextPP_SeqForEachI( m, data, seq ) FBEXT_PP_REPEAT(FBEXT_PP_SEQ_SIZE(seq), fbextPP_SeqForEachI__M, (m)(data)(seq))
expands to a sequence of n number of elements all of the value v.
# define fbextPP_SeqFromValue( n, v ) _fbextPP_SeqFromValue_##n(v)
Returns the first element in a sequence.
# define fbextPP_SeqHead( seq ) FBEXT_PP_CAT(fbextPP_SeqHead__F, FBEXT_PP_CAT(fbextPP_TupleElem__2__0, FBEXT_PP_SEQ_SPLIT(1, seq(__))))
Inserts an element before a certain position in a sequence.
# define fbextPP_SeqInsert( seq, i, elem ) FBEXT_PP_CAT(FBEXT_PP_IF(i, FBEXT_PP_SEQ_FIRSTN, fbextPP_TupleEat__2)(i, seq)(elem), FBEXT_PP_SEQ_RESTN(i, seq))
Removes the last element of a sequence.
# define fbextPP_SeqPopBack( seq ) FBEXT_PP_SEQ_FIRSTN(FBEXT_PP_DEC(FBEXT_PP_SEQ_SIZE(seq)), seq)
Removes the first element in a sequence.
# define fbextPP_SeqPopFront( seq ) FBEXT_PP_SEQ_RESTN(1, seq)
Adds an element to the end of a sequence.
# define fbextPP_SeqPushBack( seq, x ) seq(x)
Adds an element to the beginning of a sequence.
# define fbextPP_SeqPushFront( seq, x ) (x)##seq
Removes a number of leading elements from a sequence.
# define fbextPP_SeqRestN( n, seq ) FBEXT_PP_SEQ_FOLDLEFT( fbextPP_SeqRestN__M, FBEXT_PP_EMPTY(), FBEXT_PP_CAT(fbextPP_TupleElem__2__1, FBEXT_PP_SEQ_SPLIT(FBEXT_PP_INC(n), (__)seq)) )
Reverses the elements of a sequence.
# define fbextPP_SeqReverse( seq ) FBEXT_PP_SEQ_FOLDRIGHT( fbextPP_SeqReverse__M, FBEXT_PP_EMPTY(), seq)
expands to an integer literal number representing the count of elements in a sequence.
# define fbextPP_SeqSize( seq ) FBEXT_PP_CAT(_fbextPP_SeqSize_, _fbextPP_SeqSize_0 seq)
Returns the tail end of a sequence.
# define fbextPP_SeqTail( seq ) FBEXT_PP_SEQ_RESTN(1, seq)
Converts a sequence into a tuple.
# define fbextPP_SeqToTuple( seq ) (FBEXT_PP_SEQ_ENUM(seq))
Transforms the elements of a sequence.
# define fbextPP_SeqTransform( m, data, seq ) FBEXT_PP_SEQ_TAIL(FBEXT_PP_TUPLE_ELEM(3, 2, FBEXT_PP_SEQ_FOLDLEFT(fbextPP_SeqTransform_O, (m, data, (__)), seq)))
Sets the value of a certain bit to 1 or on.
declare sub set( byval bit_ as SizeType )
Sets the image to handle, freeing the current image if necessary.
declare sub setImage( byval _x_ as FB. IMAGE ptr )
Assigns a FB.IMAGE to a frame.
declare sub SetImage( byval index as uinteger, byval img as FB. IMAGE ptr )
Sets the value of a Text element.
declare property setText( byref text_ as const string )
Randomly shuffles the characters in each of an array of strings.
declare sub Shuffle ( subject() as string )
Randomly shuffles the characters in the string.
declare sub Shuffle ( )
Randomly shuffles the characters in the string.
declare function ShuffleCopy overload ( byref subject as const string ) as string
A preprocessor sequence of signed integral types.
# define fbext_SignedIntegralTypes( ) (((byte)))(((short)))(((integer)))(((longint)))
Used to set the initial size of the bitfield, will not work if the num constructor is used.
declare sub size( byval num as SizeType )
Gets the number of elements in the array.
declare const function Size ( ) as SizeType
Returns the size of the queue.
declare const function Size ( ) as ext.SizeType
Returns the size of the Stack.
declare const function Size ( ) as ext.SizeType
Gets the number of elements in the list.
declare const function Size ( ) as SizeType
Globally used type when defining the Size of an object.
type SizeType as uinteger
Copies a portion of an Array into a new array.
declare sub sliceArray overload ( src() as fbext_TypeName(T_) , dest() as fbext_TypeName(T_) , byval start_ as uinteger, byval end_ as uinteger )
Splits a string into an array.
declare function Split overload ( byref subject as const string, result() as string, byref delimiter as const string, byval limit as integer ) as integer
Splits the string into an array.
declare function Split ( result() as string, byref delimiter as const string, byval limit as integer ) as integer
Returns the substring of text that begins at the last occurrence of the character specified in char and contains the remaining characterse of text.
declare function StrRChr overload ( byref text as const string, byref char as const string ) as string
defines a new preprocessor struct sname_ with members mdecls_.
# macro fbextPP_Struct( sname_, mdecls_ )
expands to the value of the member member_ of the struct struct_.
# define fbextPP_StructMember( struct_, member_ ) _fbextPP_StructMember_aux(fbextPP_TupleRemParens(2, struct_), member_)
expands to a copy of a struct struct_ with member member_ set to value_.
# define fbextPP_StructSetMember( struct_, member_, value_ ) _fbextPP_StructSetMember_aux(fbextPP_TupleRemParens(2, struct_), member_, value_)
# define fbextPP_StructSetMembers( struct_, memvalues_ ) fbextPP_SeqFoldLeft(_fbextPP_StructSetMembers_O, struct_, memvalues_)
Subtracts one number from another.
# define fbextPP_Sub( lhs, rhs ) FBEXT_PP_REPEAT(rhs, fbextPP_Sub__L, __) lhs FBEXT_PP_REPEAT(rhs, fbextPP_Sub__R, __)
Returns a portion of a string.
declare function Substr ( byval offset as integer = 0 ) as XString
Returns a portion of a string.
declare function SubStr overload ( byref subject as const string, byval offset as integer = 0 ) as string
Compares a portion of an XString with another.
declare const function SubstrCompare ( byref b as const string, byval offset as integer = 0 ) as integer
Compares a substring with another.
declare function SubStrCompare overload ( byref a as const string, byref b as const string, byval offset as integer = 0 ) as integer
Finda the number of strings contained in the XString.
declare const function SubstrCount ( byref needle as const string, byval offset as integer = 0 ) as integer
Finds the number of substrings within a string.
declare function SubStrCount overload ( byref haystack as const string, byref needle as const string, byval offset as integer = 0 ) as integer
Replaces a portion of the XString with another.
declare sub SubstrReplace ( byref replacement as const string, byval offset as integer = 0 )
Replaces a substring with another.
declare sub SubStrReplace overload ( byref subject as string, byref replacement as const string, byval offset as integer = 0 )
Type independant value swapper.
# macro FBEXT_SWAP( a, b )
Swaps the value of this fbext_SharedPtrArray(T_) with another.
declare sub Swap_ ( byref x as fbext_SharedPtrArray(T_) )
Swaps the contents of the array with another in constant time.
declare sub Swap_ ( byref x as typeof( fbext_Array(( T_)( Allocator_)) ) )
Swaps the value of this fbext_SharedPtr(T_) with another.
declare sub Swap_ ( byref x as fbext_SharedPtr(T_) )