|
| Scalar_datatype (Scalar_kind kind, size_t size) |
|
| Scalar_datatype (Scalar_kind kind, size_t size, size_t align) |
|
| Scalar_datatype (Scalar_kind kind, size_t size, size_t align, size_t dense_size, std::function< void *(void *, const void *)> copy, std::function< void(void *)> destroy) |
|
Scalar_kind | kind () const |
| Interpretation of the content. More...
|
|
Datatype_template_uptr | clone () const override |
| Creates a new datatype as an exact copy of this one. More...
|
|
Datatype_uptr | clone_type () const override |
| Creates a new datatype as an exact copy of this one. More...
|
|
Datatype_uptr | densify () const override |
| Creates a new datatype as the dense copy of this one. More...
|
|
Datatype_uptr | evaluate (Context &) const override |
| Creates a new datatype by resolving the value of all metadata references. More...
|
|
bool | dense () const override |
| Indicate if the datatype is dense or not. More...
|
|
size_t | datasize () const override |
| Computes the data size of a type, excluding potentially unused memory from a sparse type. More...
|
|
size_t | buffersize () const override |
| Computes the data size of a type, including potentially unused memory from a sparse type. More...
|
|
size_t | alignment () const override |
| Returns the required alignment for a type. More...
|
|
bool | simple () const override |
| Tells if data can be copied as bytes (if type is dense) and doesn't need a destroyer. More...
|
|
void * | data_to_dense_copy (void *to, const void *from) const override |
| Creates a dense deep copy of data. More...
|
|
void * | data_from_dense_copy (void *to, const void *from) const override |
| Creates a sparse deep copy of dense data. More...
|
|
void | destroy_data (void *ptr) const override |
| Function used to delete the data behind the datatype. More...
|
|
std::string | debug_string () const override |
| Returns the datatype yaml representation as a string. More...
|
|
bool | operator== (const Datatype &) const override |
| Test for equality. More...
|
|
| ~Datatype () override |
|
bool | operator!= (const Datatype &other) const |
| Test for inequality. More...
|
|
std::pair< void *, Datatype_uptr > | subaccess (void *from, const Accessor_base &accessor) const |
| Creates datatype of subtype and returns it with a moved pointer. More...
|
|
std::pair< void *, Datatype_uptr > | subaccess (void *from, const std::vector< std::unique_ptr< Accessor_base >> &accessors) const |
| Creates datatype of subtype and returns it with a moved pointer. More...
|
|
virtual std::pair< void *, Datatype_uptr > | subaccess_by_iterators (void *from, std::vector< std::unique_ptr< Accessor_base >>::const_iterator remaining_begin, std::vector< std::unique_ptr< Accessor_base >>::const_iterator remaining_end) const |
| Creates datatype of subtype and returns it with a moved pointer. More...
|
|
virtual | ~Datatype_template () |
| Destroys the template. More...
|
|