Awkward Array: NumpyForm Class Reference

Loading...
Searching...
No Matches
Public Member Functions | List of all members
NumpyForm Class Reference

Form describing NumpyArray. More...

`#include <NumpyArray.h>`

Inheritance diagram for NumpyForm:

## Public Member Functions
| NumpyForm (bool has_identities, const util::Parameters &parameters, const FormKey &form_key, const std::vector< int64_t > &inner_shape, int64_t itemsize, const std::string &format, util::dtype dtype)
| Creates a NumpyForm. See NumpyArray for documentation.
const std::vector< int64_t > | inner_shape () const
int64_t | itemsize () const
const std::string | format () const
util::dtype | dtype () const
const std::string | primitive () const
const TypePtr | type (const util::TypeStrs &typestrs) const override
| High-level Type describing this Form.
const std::string | tostring () const override
| Returns a string representation of this Form (tojson with `pretty = true` and `verbose = false`).
const std::string | tojson (bool pretty, bool verbose) const override
| Returns a JSON representation of this array.
void | tojson_part (ToJson &builder, bool verbose) const override
| Internal function to produce a JSON representation one node at a time.
void | tojson_part (ToJson &builder, bool verbose, bool toplevel) const
const FormPtr | shallow_copy () const override
| Copies this node without copying any nodes hierarchically nested within it.
const FormPtr | with_form_key (const FormKey &form_key) const override
| Copies this node, adding or replacing a form_key.
const std::string | purelist_parameter (const std::string &key) const override
| The parameter associated with `key` at the first level that has a non-null value, descending only as deep as the first RecordForm.
bool | purelist_isregular () const override
| Returns `true` if all nested lists down to the first RecordForm are RegularForm nodes; `false` otherwise.
int64_t | purelist_depth () const override
| The list-depth of this array, not counting any contained within a RecordForm.
bool | dimension_optiontype () const override
| Returns `true` if this dimension has option-type; `false` otherwise.
const std::pair< int64_t, int64_t > | minmax_depth () const override
| Returns (a) the minimum list-depth and (b) the maximum list-depth of the array, which can differ if this array "branches" (differs when followed through different fields of a RecordForm or UnionForm).
const std::pair< bool, int64_t > | branch_depth () const override
| Returns (a) whether the list-depth of this array "branches," or differs when followed through different fields of a RecordForm or UnionForm and (b) the minimum list-depth.
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 RecordForm.
int64_t | fieldindex (const std::string &key) const override
| The position of a tuple or record key name if this array contains a RecordForm.
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.
bool | haskey (const std::string &key) const override
| Returns `true` if the array contains a RecordForm with the specified `key`; `false` otherwise.
const std::vector< std::string > | keys () const override
| A list of RecordArray keys or an empty list if this array does not contain a RecordArray.
bool | istuple () const override
| Returns `true` if the outermost RecordArray is a tuple.
bool | equal (const FormPtr &other, bool check_identities, bool check_parameters, bool check_form_key, bool compatibility_check) const override
| Returns `true` if this Form is equal to the other Form; `false` otherwise.
const FormPtr | getitem_field (const std::string &key) const override
| Returns the Form that would result from a field-slice.
const FormPtr | getitem_fields (const std::vector< std::string > &keys) const override
| Returns the Form that would result from a fields-slice.
Public Member Functions inherited from Form
| Form (bool has_identities, const util::Parameters &parameters, const FormKey &form_key)
| Called by subclass constructors; assigns has_identities, parameters, and form_key upon construction.
virtual | ~Form ()
| Empty destructor; required for some C++ reason.
virtual const TypePtr | type (const util::TypeStrs &typestrs) const =0
| High-level Type describing this Form.
virtual void | tojson_part (ToJson &builder, bool verbose) const =0
| Internal function to produce a JSON representation one node at a time.
virtual const FormPtr | shallow_copy () const =0
| Copies this node without copying any nodes hierarchically nested within it.
virtual const FormPtr | with_form_key (const FormKey &form_key) const =0
| Copies this node, adding or replacing a form_key.
virtual bool | equal (const FormPtr &other, bool check_identities, bool check_parameters, bool check_form_key, bool compatibility_check) const =0
| Returns `true` if this Form is equal to the other Form; `false` otherwise.
bool | form_key_equals (const FormKey &other_form_key) const
| Returns `true` if this Form has the same form_key as the other.
virtual const std::string | purelist_parameter (const std::string &key) const =0
| The parameter associated with `key` at the first level that has a non-null value, descending only as deep as the first RecordForm.
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.
virtual bool | purelist_isregular () const =0
| Returns `true` if all nested lists down to the first RecordForm are RegularForm nodes; `false` otherwise.
virtual int64_t | purelist_depth () const =0
| The list-depth of this array, not counting any contained within a RecordForm.
virtual bool | dimension_optiontype () const =0
| Returns `true` if this dimension has option-type; `false` otherwise.
const FormKey | form_key () const
| An optional string associated with this Form, usually specifying where an array may be fetched.
virtual const std::pair< int64_t, int64_t > | minmax_depth () const =0
| Returns (a) the minimum list-depth and (b) the maximum list-depth of the array, which can differ if this array "branches" (differs when followed through different fields of a RecordForm or UnionForm).
virtual const std::pair< bool, int64_t > | branch_depth () const =0
| Returns (a) whether the list-depth of this array "branches," or differs when followed through different fields of a RecordForm or UnionForm and (b) the minimum list-depth.
virtual int64_t | numfields () const =0
| The number of fields in the first nested tuple or records or `-1` if this array does not contain a RecordForm.
virtual int64_t | fieldindex (const std::string &key) const =0
| The position of a tuple or record key name if this array contains a RecordForm.
virtual const std::string | key (int64_t fieldindex) const =0
| The record name associated with a given field index or the tuple index as a string (e.g. `"0"`, `"1"`, `"2"`) if a tuple.
virtual bool | haskey (const std::string &key) const =0
| Returns `true` if the array contains a RecordForm with the specified `key`; `false` otherwise.
virtual const std::vector< std::string > | keys () const =0
| A list of RecordArray keys or an empty list if this array does not contain a RecordArray.
virtual bool | istuple () const =0
| Returns `true` if the outermost RecordArray is a tuple.
virtual const std::string | tostring () const
| Returns a string representation of this Form (tojson with `pretty = true` and `verbose = false`).
virtual const std::string | tojson (bool pretty, bool verbose) const
| Returns a JSON representation of this array.
bool | has_identities () const
| Returns `true` if the corresponding array has associated `Identities`.
const util::Parameters | parameters () const
| String-to-JSON map that augments the meaning of this Form.
const std::string | parameter (const std::string &key) const
| Get one parameter from this Form.
void | identities_tojson (ToJson &builder, bool verbose) const
| Internal function for adding identities in tojson.
void | parameters_tojson (ToJson &builder, bool verbose) const
| Internal function for adding parameters in tojson.
void | form_key_tojson (ToJson &builder, bool verbose) const
| Internal function for adding form_key in tojson.
virtual const FormPtr | getitem_range () const
| Returns the Form that would result from a range-slice.
virtual const FormPtr | getitem_field (const std::string &key) const =0
| Returns the Form that would result from a field-slice.
virtual const FormPtr | getitem_fields (const std::vector< std::string > &keys) const =0
| Returns the Form that would result from a fields-slice.

## Additional Inherited Members
Static Public Member Functions inherited from Form
static FormPtr | fromnumpy (char kind, int64_t itemsize, const std::vector< int64_t > &inner_shape)
static FormPtr | fromjson (const std::string &data)
Protected Attributes inherited from Form
bool | has_identities_
| See has_identities.
util::Parameters | parameters_
| See parameters.
FormKey | form_key_
| See form_key.

## Detailed Description

Form describing NumpyArray.

## Constructor & Destructor Documentation

## ◆ NumpyForm()

NumpyForm | ( | bool | has_identities,
|  | const util::Parameters & | parameters,
|  | const FormKey & | form_key,
|  | const std::vector< int64_t > & | inner_shape,
|  | int64_t | itemsize,
|  | const std::string & | format,
|  | util::dtype | dtype
| ) |  |

Creates a NumpyForm. See NumpyArray for documentation.

## Member Function Documentation

## ◆ branch_depth()

const std::pair< bool, int64_t > branch_depth | ( |  | ) | const
| overridevirtual

Returns (a) whether the list-depth of this array "branches," or differs when followed through different fields of a RecordForm or UnionForm and (b) the minimum list-depth.

If the array does not contain any records or heterogeneous data, the `first` element is always `true` and the `second` is simply the depth.

Implements Form.

## ◆ dimension_optiontype()

bool dimension_optiontype | ( |  | ) | const
| overridevirtual

Returns `true` if this dimension has option-type; `false` otherwise.

Implements Form.

## ◆ dtype()

util::dtype dtype | ( |  | ) | const

## ◆ equal()

bool equal | ( | const FormPtr & | other,
|  | bool | check_identities,
|  | bool | check_parameters,
|  | bool | check_form_key,
|  | bool | compatibility_check
| ) |  | const
| overridevirtual

Returns `true` if this Form is equal to the other Form; `false` otherwise.

Parameters

  check_identities | If `true`, Forms are not equal unless they both has_identities.
  check_parameters | If `true`, Forms are not equal unless they have the same parameters.
  check_form_key | If `true`, Forms are not equal unless they have the same form_key.
  compatibility_check | If `true`, this is part of a compatibility check between an expected Form (`this`) and a generated array's Form (`other`). When the expected Form is a VirtualForm, it's allowed to be less specific than the `other` VirtualForm.

Implements Form.

## ◆ fieldindex()

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

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

Implements Form.

## ◆ format()

const std::string format | ( |  | ) | const

## ◆ getitem_field()

const FormPtr getitem_field | ( | const std::string & | key | ) | const
| overridevirtual

Returns the Form that would result from a field-slice.

Matches the operation of Content::getitem_field.

Implements Form.

## ◆ getitem_fields()

const FormPtr getitem_fields | ( | const std::vector< std::string > & | keys | ) | const
| overridevirtual

Returns the Form that would result from a fields-slice.

Matches the operation of Content::getitem_fields.

Implements Form.

## ◆ haskey()

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

Returns `true` if the array contains a RecordForm with the specified `key`; `false` otherwise.

Implements Form.

## ◆ inner_shape()

const std::vector< int64_t > inner_shape | ( |  | ) | const

## ◆ istuple()

bool istuple | ( |  | ) | const
| overridevirtual

Returns `true` if the outermost RecordArray is a tuple.

Implements Form.

## ◆ itemsize()

int64_t itemsize | ( |  | ) | const

## ◆ 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 RecordForm.

Implements Form.

## ◆ keys()

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

A list of RecordArray keys or an empty list if this array does not contain a RecordArray.

Implements Form.

## ◆ minmax_depth()

const std::pair< int64_t, int64_t > minmax_depth | ( |  | ) | const
| overridevirtual

Returns (a) the minimum list-depth and (b) the maximum list-depth of the array, which can differ if this array "branches" (differs when followed through different fields of a RecordForm or UnionForm).

Implements Form.

## ◆ 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 RecordForm.

Implements Form.

## ◆ primitive()

const std::string primitive | ( |  | ) | const

## ◆ purelist_depth()

int64_t purelist_depth | ( |  | ) | const
| overridevirtual

The list-depth of this array, not counting any contained within a RecordForm.

If this array contains a UnionForm with different depths, the return value is `-1`.

Implements Form.

## ◆ purelist_isregular()

bool purelist_isregular | ( |  | ) | const
| overridevirtual

Returns `true` if all nested lists down to the first RecordForm are RegularForm nodes; `false` otherwise.

Implements Form.

## ◆ purelist_parameter()

const std::string purelist_parameter | ( | const std::string & | key | ) | const
| overridevirtual

The parameter associated with `key` at the first level that has a non-null value, descending only as deep as the first RecordForm.

Implements Form.

## ◆ shallow_copy()

const FormPtr shallow_copy | ( |  | ) | const
| overridevirtual

Copies this node without copying any nodes hierarchically nested within it.

Implements Form.

## ◆ tojson()

const std::string tojson | ( | bool | pretty,
|  | bool | verbose
| ) |  | const
| overridevirtual

Returns a JSON representation of this array.

Parameters

  pretty | If `true`, add spacing to make the JSON human-readable. If `false`, return a compact representation.

Reimplemented from Form.

## ◆ tojson_part() [1/2]

void tojson_part | ( | ToJson & | builder,
|  | bool | verbose
| ) |  | const
| overridevirtual

Internal function to produce a JSON representation one node at a time.

Implements Form.

## ◆ tojson_part() [2/2]

void tojson_part | ( | ToJson & | builder,
|  | bool | verbose,
|  | bool | toplevel
| ) |  | const

## ◆ tostring()

const std::string tostring | ( |  | ) | const
| overridevirtual

Returns a string representation of this Form (tojson with `pretty = true` and `verbose = false`).

Reimplemented from Form.

## ◆ type()

const TypePtr type | ( | const util::TypeStrs & | typestrs | ) | const
| overridevirtual

High-level Type describing this Form.

Parameters

  typestrs | A mapping from `"__record__"` parameters to string representations of those types, to override the derived strings.

Implements Form.

## ◆ with_form_key()

const FormPtr with_form_key | ( | const FormKey & | form_key | ) | const
| overridevirtual

Copies this node, adding or replacing a form_key.

Implements Form.

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

- include/awkward/array/NumpyArray.h