Qore DataProvider Module Reference 2.7.3
Loading...
Searching...
No Matches
SoftListDataType.qc.dox.h
1// -*- mode: c++; indent-tabs-mode: nil -*-
3
25// assume local scope for variables, do not use "$" signs
26// require type definitions everywhere
28// enable all warnings
29
30
32namespace DataProvider {
35
36public:
38 constructor(AbstractDataProviderType element_type, bool or_nothing = False, *hash<auto> options, *hash<auto> tags)
39 : ListDataType(sprintf("%ssoftlist<%s>", or_nothing ? "*" : "", element_type.getName()),
41 or_nothing, options, tags) {
42 }
43
45 constructor(Type element_type, bool or_nothing = False, *hash<auto> options, *hash<auto> tags)
46 : ListDataType(sprintf("%ssoftlist<%s>", or_nothing ? "*" : "", element_type.getName()),
48 or_nothing, options, tags) {
49 }
50
52 constructor(string name, AbstractDataProviderType element_type, bool or_nothing = False, *hash<auto> options,
53 *hash<auto> tags)
55 element_type, or_nothing, options, tags) {
56 }
57
59 constructor(string name, Type element_type, bool or_nothing = False, *hash<auto> options, *hash<auto> tags)
62 or_nothing, options, tags) {
63 }
64
67
68
70 *hash<string, AbstractDataField> getFields();
71
72
74 hash<string, bool> getAcceptTypeHash();
75
76
78 hash<string, bool> getReturnTypeHash();
79
80
82
88 auto acceptsValue(auto value);
89
90
92protected:
94public:
95
96
98protected:
99 Type getQoreType(Type element_type, bool or_nothing);
100public:
101
102};
103};
describes a data type
Definition: AbstractDataProviderType.qc.dox.h:206
*hash< auto > tags
type tags
Definition: AbstractDataProviderType.qc.dox.h:222
static AbstractDataProviderType get(Type type, *hash< auto > options, *hash< auto > tags)
Returns an appropriate object for the given type.
describes a data type based on a hash
Definition: ListDataType.qc.dox.h:28
string name
the name of the type
Definition: ListDataType.qc.dox.h:33
string getName()
returns the type name
*Type getValueType()
returns the base type for the type, if any
AbstractDataProviderType element_type
element type
Definition: ListDataType.qc.dox.h:36
describes a data type based on a hash
Definition: SoftListDataType.qc.dox.h:34
constructor(string name, AbstractDataProviderType element_type, bool or_nothing=False, *hash< auto > options, *hash< auto > tags)
creates the object
Definition: SoftListDataType.qc.dox.h:52
*hash< string, AbstractDataField > getFields()
returns the fields of the data structure; if any
constructor(Type element_type, bool or_nothing=False, *hash< auto > options, *hash< auto > tags)
creates the object
Definition: SoftListDataType.qc.dox.h:45
Type getQoreType(Type element_type, bool or_nothing)
Returns the underlying Qore type for this type.
*AbstractDataProviderType getElementType()
returns the subtype (for lists or hashes) if there is only one
init(AbstractDataProviderType element_type, bool or_nothing)
common constructor initialization
hash< string, bool > getAcceptTypeHash()
returns a hash of base types accepted by this type; keys are type names
hash< string, bool > getReturnTypeHash()
returns a hash of base types returned by this type; keys are type names
constructor(AbstractDataProviderType element_type, bool or_nothing=False, *hash< auto > options, *hash< auto > tags)
creates the object
Definition: SoftListDataType.qc.dox.h:38
constructor(string name, Type element_type, bool or_nothing=False, *hash< auto > options, *hash< auto > tags)
creates the object
Definition: SoftListDataType.qc.dox.h:59
auto acceptsValue(auto value)
returns the value if the value can be assigned to the type
Qore AbstractDataField class definition.
Definition: AbstractDataField.qc.dox.h:27