Type::ListOf -- type for testing
lists of objects with the same type
IntroductionType::ListOf describes lists of objects of a specified
type.
Call(s)testtype(obj, Type::ListOf(obj_type <, min_nr <,
max_nr>>))
Parametersobj |
- | any MuPAD object |
obj_type |
- | the type of the objects; a type can be an object of
the library Type or one
of the possible return values of domtype and type |
min_nr |
- | the minimal number of objects as nonnegative integer |
max_nr |
- | the maximal number of objects as nonnegative integer |
Returnssee testtype
Related
FunctionsDOM_LIST, testtype, Type::ListProduct, Type::SetOf, Type::Union
Detailstesttype(obj,
Type::ListOf(obj_types...)) checks, whether
obj is a list with elements of
the given type obj_type... and returns TRUE, if it holds, otherwise FALSE.min_nr and
max_nr determine the minimum and maximum number of
elements in the analyzed list. If the numbers are not be given, the
number of elements in the list will not be checked. If only the minimum
is given, only the minimal number of elements in the list is
checked.Type::Union provides a way to allow more
than one type for the list elements.
Example
1Is the given list a list of identifiers?
>> testtype([a, b, c, d, e, f], Type::ListOf(DOM_IDENT))
TRUE
Is the given list a list of at least five real numbers?
>> testtype([0, 0.5, 1, 1.5, 2, 2.5, 3], Type::ListOf(Type::Real, 5))
TRUE
Example
2testtype is used to select lists with exactly two
identifiers:
>> S := {[a], [a, b], [d, 1], [0, d], [e], [d, e]}:
select(S, testtype, Type::ListOf(DOM_IDENT, 2, 2))
{[a, b], [d, e]}