UnknownType Class Reference

Describes the high level type of data with whose type is not known, usually because an ArrayBuilder did not have any instances to sample. More...

#include <UnknownType.h>

Inheritance diagram for UnknownType:
Type

Public Member Functions

 UnknownType (const util::Parameters &parameters, const std::string &typestr)
 Create an OptionType with a full set of parameters. More...
 
std::string tostring_part (const std::string &indent, const std::string &pre, const std::string &post) const override
 Internal function to build an output string for tostring. More...
 
const TypePtr shallow_copy () const override
 Copies this Type without copying any hierarchically nested types. More...
 
bool equal (const TypePtr &other, bool check_parameters) const override
 Returns true if this type is equal to other; false otherwise. More...
 
int64_t numfields () const override
 The number of fields in the first nested tuple or records or -1 if this array does not contain a RecordType. More...
 
int64_t fieldindex (const std::string &key) const override
 The position of a tuple or record key name if this array contains a RecordType. More...
 
const std::string key (int64_t fieldindex) const override
 The record name associated with a given field index or the tuple index as a string (e.g. "0", "1", "2") if a tuple. More...
 
bool haskey (const std::string &key) const override
 Returns true if the type contains a RecordType with the specified key; false otherwise. More...
 
const std::vector< std::string > keys () const override
 A list of RecordType keys or an empty list if this type does not contain a RecordType. More...
 
const ContentPtr empty () const override
 Returns an empty array (Content) with this type. More...
 
- Public Member Functions inherited from Type
 Type (const util::Parameters &parameters, const std::string &typestr)
 Called by all subclass constructors; assigns parameters and typestr upon construction. More...
 
virtual ~Type ()
 Virtual destructor acts as a first non-inline virtual function that determines a specific translation unit in which vtable shall be emitted. More...
 
const util::Parameters parameters () const
 Get one parameter from this type. More...
 
void setparameters (const util::Parameters &parameters)
 Assign one parameter for this type (in-place). More...
 
const std::string parameter (const std::string &key) const
 Custom parameters inherited from the Content that this type describes. More...
 
void setparameter (const std::string &key, const std::string &value)
 Assign one parameter to this type (in-place). More...
 
bool parameter_equals (const std::string &key, const std::string &value) const
 Returns true if the parameter associated with key exists and is equal to value; false otherwise. More...
 
bool parameters_equal (const util::Parameters &other, bool check_all) const
 Returns true if all parameters of this type are equal to the other parameters. More...
 
bool parameter_isstring (const std::string &key) const
 Returns true if the parameter associated with key is a string; false otherwise. More...
 
bool parameter_isname (const std::string &key) const
 Returns true if the parameter associated with key is a string that matches [A-Za-z_][A-Za-z_0-9]*; false otherwise. More...
 
const std::string parameter_asstring (const std::string &key) const
 Returns the parameter associated with key as a string if parameter_isstring; raises an error otherwise. More...
 
const std::string tostring () const
 Returns a string representation of the type as a Datashape or its typestr overload (if non-empty). More...
 
const std::string compare (TypePtr supertype)
 Returns a string showing a side-by-side comparison of two types, highlighting differences. More...
 
const std::string typestr () const
 Optional string that overrides the default string representation (missing if empty). More...
 

Additional Inherited Members

- Protected Member Functions inherited from Type
bool get_typestr (std::string &output) const
 Internal function that replaces output in-place with the typestr and returns true if the typestr is not missing (i.e. empty); otherwise, it leaves output untouched and returns false. More...
 
bool parameters_empty () const
 Internal function to determine if there are no parameters except __categorical__. More...
 
std::string wrap_categorical (const std::string &output) const
 Internal function that wraps output with categorical[type= and ] if __categorical__ is true; passes through otherwise. More...
 
const std::string string_parameters () const
 Internal function to format parameters as part of the tostring string. More...
 
- Protected Attributes inherited from Type
util::Parameters parameters_
 See parameters. More...
 
const std::string typestr_
 See typestr. More...
 

Detailed Description

Describes the high level type of data with whose type is not known, usually because an ArrayBuilder did not have any instances to sample.

EmptyArray nodes have this type.

Constructor & Destructor Documentation

◆ UnknownType()

UnknownType ( const util::Parameters parameters,
const std::string &  typestr 
)

Create an OptionType with a full set of parameters.

Parameters
parametersCustom parameters inherited from the Content that this type describes.
typestrOptional string that overrides the default string representation (missing if empty).

Member Function Documentation

◆ empty()

const ContentPtr empty ( ) const
overridevirtual

Returns an empty array (Content) with this type.

Implements Type.

◆ equal()

bool equal ( const TypePtr other,
bool  check_parameters 
) const
overridevirtual

Returns true if this type is equal to other; false otherwise.

Parameters
otherThe other Type.
check_parametersIf true, types must have the same parameters to be considered equal; if false, types do not check parameters.

Implements Type.

◆ fieldindex()

int64_t fieldindex ( const std::string &  key) const
overridevirtual

The position of a tuple or record key name if this array contains a RecordType.

Implements Type.

◆ haskey()

bool haskey ( const std::string &  key) const
overridevirtual

Returns true if the type contains a RecordType with the specified key; false otherwise.

Implements Type.

◆ key()

const std::string key ( int64_t  fieldindex) const
overridevirtual

The record name associated with a given field index or the tuple index as a string (e.g. "0", "1", "2") if a tuple.

Raises an error if the array does not contain a RecordType.

Implements Type.

◆ keys()

const std::vector<std::string> keys ( ) const
overridevirtual

A list of RecordType keys or an empty list if this type does not contain a RecordType.

Implements Type.

◆ numfields()

int64_t numfields ( ) const
overridevirtual

The number of fields in the first nested tuple or records or -1 if this array does not contain a RecordType.

Implements Type.

◆ shallow_copy()

const TypePtr shallow_copy ( ) const
overridevirtual

Copies this Type without copying any hierarchically nested types.

Implements Type.

◆ tostring_part()

std::string tostring_part ( const std::string &  indent,
const std::string &  pre,
const std::string &  post 
) const
overridevirtual

Internal function to build an output string for tostring.

Parameters
indentIndentation depth as a string of spaces.
prePrefix string, usually an opening XML tag.
postPostfix string, usually a closing XML tag and carriage return.

Implements Type.


The documentation for this class was generated from the following file: