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 )
second as fbext_TypeName( C_ )
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 text to show after the options list when showHelp is called.
declare sub setHelpFooter( byref s as string )
Sets the text to show before the options list when showHelp is called.
declare sub setHelpHeader( byref s as string )
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 )
The FreeBASIC compiler does not currently support bit shifting with 64 bit datatypes.
declare function shl64( byval ovar as ulongint, byval sbits as integer ) as ulongint
Shows the built-in help for all known options.
declare sub showHelp()
The FreeBASIC compiler does not currently support bit shifting with 64 bit datatypes.
declare function shr64( byval ovar as ulongint, byval sbits as integer ) as ulongint
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_) )