Loading...
Searching...
No Matches
SoftListDataType.qc.dox.h
// -*- mode: c++; indent-tabs-mode: nil -*-
// assume local scope for variables, do not use "$" signs
// require type definitions everywhere
// enable all warnings
namespace DataProvider {
class SoftListDataType : public ListDataType {
public:
constructor(AbstractDataProviderType element_type, bool or_nothing = False, *hash<auto> options, *hash<auto> tags)
: ListDataType(sprintf("%ssoftlist<%s>", or_nothing ? "*" : "", element_type.getName()),
SoftListDataType::getQoreType(element_type.getValueType(), or_nothing), element_type,
or_nothing, options, tags) {
}
constructor(Type element_type, bool or_nothing = False, *hash<auto> options, *hash<auto> tags)
: ListDataType(sprintf("%ssoftlist<%s>", or_nothing ? "*" : "", element_type.getName()),
SoftListDataType::getQoreType(element_type, or_nothing), AbstractDataProviderType::get(element_type),
or_nothing, options, tags) {
}
constructor(string name, AbstractDataProviderType element_type, bool or_nothing = False, *hash<auto> options,
*hash<auto> tags)
: ListDataType(name, SoftListDataType::getQoreType(element_type.getValueType(), or_nothing),
element_type, or_nothing, options, tags) {
}
constructor(string name, Type element_type, bool or_nothing = False, *hash<auto> options, *hash<auto> tags)
: ListDataType(name,
SoftListDataType::getQoreType(element_type, or_nothing), AbstractDataProviderType::get(element_type),
or_nothing, options, tags) {
}
*AbstractDataProviderType getElementType();
*hash<string, AbstractDataField> getFields();
hash<string, bool> getAcceptTypeHash();
hash<string, bool> getReturnTypeHash();
auto acceptsValue(auto value);
protected:
init(AbstractDataProviderType element_type, bool or_nothing);
public:
protected:
Type getQoreType(Type element_type, bool or_nothing);
public:
};
};
DataProvider::AbstractDataProviderType
describes a data type
Definition: AbstractDataProviderType.qc.dox.h:187
DataProvider::AbstractDataProviderType::tags
*hash< auto > tags
type tags
Definition: AbstractDataProviderType.qc.dox.h:203
DataProvider::AbstractDataProviderType::get
static AbstractDataProviderType get(Type type, *hash< auto > options, *hash< auto > tags)
Returns an appropriate object for the given type.
DataProvider::ListDataType
describes a data type based on a hash
Definition: ListDataType.qc.dox.h:28
DataProvider::ListDataType::name
string name
the name of the type
Definition: ListDataType.qc.dox.h:33
DataProvider::ListDataType::getName
string getName()
returns the type name
DataProvider::ListDataType::getValueType
*Type getValueType()
returns the base type for the type, if any
DataProvider::ListDataType::element_type
AbstractDataProviderType element_type
element type
Definition: ListDataType.qc.dox.h:36
DataProvider::SoftListDataType
describes a data type based on a hash
Definition: SoftListDataType.qc.dox.h:34
DataProvider::SoftListDataType::constructor
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
DataProvider::SoftListDataType::getFields
*hash< string, AbstractDataField > getFields()
returns the fields of the data structure; if any
DataProvider::SoftListDataType::constructor
constructor(Type element_type, bool or_nothing=False, *hash< auto > options, *hash< auto > tags)
creates the object
Definition: SoftListDataType.qc.dox.h:45
DataProvider::SoftListDataType::getQoreType
Type getQoreType(Type element_type, bool or_nothing)
Returns the underlying Qore type for this type.
DataProvider::SoftListDataType::getElementType
*AbstractDataProviderType getElementType()
returns the subtype (for lists or hashes) if there is only one
DataProvider::SoftListDataType::init
init(AbstractDataProviderType element_type, bool or_nothing)
common constructor initialization
DataProvider::SoftListDataType::getAcceptTypeHash
hash< string, bool > getAcceptTypeHash()
returns a hash of base types accepted by this type; keys are type names
DataProvider::SoftListDataType::getReturnTypeHash
hash< string, bool > getReturnTypeHash()
returns a hash of base types returned by this type; keys are type names
DataProvider::SoftListDataType::constructor
constructor(AbstractDataProviderType element_type, bool or_nothing=False, *hash< auto > options, *hash< auto > tags)
creates the object
Definition: SoftListDataType.qc.dox.h:38
DataProvider::SoftListDataType::constructor
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
DataProvider::SoftListDataType::acceptsValue
auto acceptsValue(auto value)
returns the value if the value can be assigned to the type
DataProvider
Qore AbstractDataField class definition.
Definition: AbstractDataField.qc.dox.h:27