T | |
fbext_ | TDeclare |
fbext_ | TDefine |
fbext_ | TemplateID |
testly_assert_equal, ext. | |
testly_assert_equal_error, ext. | |
testly_assert_error, ext. | |
testly_assert_fail, ext. | |
testly_assert_false, ext. | |
testly_assert_false_error, ext. | |
testly_assert_not_equal, ext. | |
testly_assert_not_equal_error, ext. | |
testly_assert_pass, ext. | |
testly_assert_string_equal, ext. | |
testly_assert_string_equal_error, ext. | |
testly_assert_string_not_equal, ext. | |
testly_assert_string_not_equal_error, ext. | |
testly_assert_true, ext. | |
testly_assert_true_error, ext. | |
fbext_ | TID |
fbextPP_ | TupleEat |
fbextPP_ | TupleElem |
fbextPP_ | TupleEnum |
fbextPP_ | TupleForEach |
fbextPP_ | TupleForEachI |
fbextPP_ | TupleFromValue |
fbextPP_ | TupleRemove |
fbextPP_ | TupleRemParens |
fbextPP_ | TupleReplace |
fbextPP_ | TupleReverse |
fbextPP_ | TupleToSeq |
fbext_ | TypeID |
fbext_ | TypeName |
U | |
fbext_ | UnsignedIntegralTypes |
X | |
FBEXT_ | XML_IS_WHITESPACE |
Declares the template tname_ with targs_.
# macro fbext_TDeclare( tname_, targs_ )
Defines the template tname_ with targs_.
# macro fbext_TDefine( tname_, linkage_, targs_ )
# define fbext_TemplateID( tname_, targs_, deftargs_ ) fbext_TemplateID_I( tname_, fbext_GetTArgsWithDefaults__( targs_, deftargs_) )
#define testly_assert_equal( __expected__, __actual__ ) ext.Testly.customAssertion((__actual__) = (__expected__), __FILE__, __LINE__, ("expected {" #__expected__ "} but was {" #__actual__ "}"))
#define testly_assert_equal_error( __expected__, __actual__ ) if (ext.Testly.customAssertion((__actual__) = (__expected__), __FILE__, __LINE__, ("expected {" #__expected__ "} but was {" #__actual__ "}"), true) = false) then exit sub
#define testly_assert_error( __message__ ) if (ext.Testly.customAssertion((false), __FILE__, __LINE__, __message__, true) = false) then exit sub
#define testly_assert_fail( __message__ ) ext.Testly.customAssertion((false), __FILE__, __LINE__, __message__)
#define testly_assert_false( __value__ ) ext.Testly.customAssertion((__value__) = (false), __FILE__, __LINE__, ("{" #__value__ "} is not false."))
#define testly_assert_false_error( __value__ ) if (ext.Testly.customAssertion((__value__) = (false), __FILE__, __LINE__, ("{" #__value__ "} is not false."), true) = false) then exit sub
#define testly_assert_not_equal( __expected__, __actual__ ) ext.Testly.customAssertion((__actual__) <> (__expected__), __FILE__, __LINE__, ("{" #__actual__ "} expected to be != to {" #__expected__ "}"))
#define testly_assert_not_equal_error( __expected__, __actual__ ) if (ext.Testly.customAssertion((__actual__) <> (__expected__), __FILE__, __LINE__, ("{" #__actual__ "} expected to be != to {" #__expected__ "}"), true) = false) then exit sub
#define testly_assert_pass( __message__ ) ext.Testly.customAssertion((true), __FILE__, __LINE__, __message__)
#define testly_assert_string_equal( __expected__, __actual__ ) ext.Testly.customAssertion((str(__actual__) = str(__expected__)), __FILE__, __LINE__, ("expected {" #__expected__ "} but was {" #__actual__ "}"))
#define testly_assert_string_equal_error( __expected__, __actual__ ) if (ext.Testly.customAssertion((str(__actual__) = str(__expected__)), __FILE__, __LINE__, ("expected {" #__expected__ "} but was {" #__actual__ "}"), true) = false) then exit sub
#define testly_assert_string_not_equal( __expected__, __actual__ ) ext.Testly.customAssertion((str(__actual__) <> str(__expected__)), __FILE__, __LINE__, ("{" #__actual__ "} expected to be != to {" #__expected__ "}"))
#define testly_assert_string_not_equal_error( __expected__, __actual__ ) if (ext.Testly.customAssertion((str(__actual__) <> str(__expected__)), __FILE__, __LINE__, ("{" #__actual__ "} expected to be != to {" #__expected__ "}"), true) = false) then exit sub
#define testly_assert_true( __value__ ) ext.Testly.customAssertion((__value__) = (true), __FILE__, __LINE__, ("{" #__value__ "} is not true."))
#define testly_assert_true_error( __value__ ) if (ext.Testly.customAssertion((__value__) = (true), __FILE__, __LINE__, ("{" #__value__ "} is not true."), true) = false) then exit sub
Gets the concatenated name of T_, which is often a template type parameter.
# define fbext_TID( tname_, targs_ ) fbext_TypeID((tname_) fbextPP_SeqTransform(fbext_TID_O, __, targs_))
consumes a tuple of size size, which must be specified immediately following the call to this macro.
# define fbextPP_TupleEat( size ) fbextPP_TupleEat__##size
gets the element value at position index stored in the tuple tuple of size size.
# define fbextPP_TupleElem( size, index, tuple ) fbextPP_TupleElem__##size##__##index tuple
enumerates (lists) all of the elements, in order, of the tuple tuple of size size.
# define fbextPP_TupleEnum( size, tuple ) _fbextPP_TupleEnum__##size tuple
repeatedly expands the user-defined macro m, passing it, in order, each element stored in the tuple tuple of size size.
# define fbextPP_TupleForEach( size, tuple, m ) _fbextPP_TupleForEach__##size (m, fbextPP_TupleRemParens(size, tuple))
repeatedly expands the user-defined macro m, passing it, in order, each element stored in the tuple tuple of size size along with the element’s position in the tuple.
# define fbextPP_TupleForEachI( size, tuple, m ) _fbextPP_TupleForEachI__##size (m, fbextPP_TupleRemParens(size, tuple))
expands to a tuple with size number of elements all having the value of value.
# define fbextPP_TupleFromValue( size, value ) _fbextPP_TupleFromValue_##size(value)
removes the element at position index stored in the tuple tuple of size size.
# define fbextPP_TupleRemove( size, index, tuple ) fbextPP_TupleRemove__##size##__##index tuple
removes the parenthesis from a tuple.
# define fbextPP_TupleRemParens( size, tuple ) fbextPP_TupleRemParens__##size tuple
expands to a copy of tuple of size with the element value at index replaced with value.
# define fbextPP_TupleReplace( size, index, tuple, value ) _fbextPP_TupleReplace__##size##__##index(value, fbextPP_TupleRemParens(size, tuple))
reverses the order of elements stored in the tuple tuple of size size.
# define fbextPP_TupleReverse( size, tuple ) fbextPP_TupleReverse__##size tuple
converts the tuple tuple of size size into a sequence.
# define fbextPP_TupleToSeq( size, tuple ) fbextPP_TupleToSeq__##size##tuple
Gets the concatenated name of T_, which is often a template type parameter.
# define fbext_TypeID( T_ ) fbextPP_SeqCat(T_)
Gets the qualified name of T_, which is often a template type parameter.
# define fbext_TypeName( T_ ) fbextPP_SeqCat(fbextPP_SeqForEachI(fbext_TypeName_I, __, T_))
A preprocessor sequence of unsigned integral types.
# define fbext_UnsignedIntegralTypes( ) (((ubyte)))(((ushort)))(((uinteger)))(((ulongint)))
returns true if character is a whitespace character.
#define FBEXT_XML_IS_WHITESPACE( c ) ((c) = &h09 or (c) = &h0a or (c) = &h0d or (c) = &h20)