SliceJaggedOf< T > Class Template Reference

Represents an array of nested lists, where the content may be SliceArrayOf, SliceMissingOf, or SliceJaggedOf (no equivalent in NumPy). More...

#include <Slice.h>

Inheritance diagram for SliceJaggedOf< T >:
SliceItem

Public Member Functions

 SliceJaggedOf (const IndexOf< T > &offsets, const SliceItemPtr &content)
 Creates a SliceJaggedOf with a full set of parameters. More...
 
const IndexOf< T > offsets () const
 Positions where one nested list stops and the next starts in the content in the same sense as ListOffsetArray. More...
 
const SliceItemPtr content () const
 The contiguous content of the nested lists, like ListOffsetArray's content. More...
 
int64_t length () const
 The length of the array: len(offsets) - 1. More...
 
const SliceItemPtr shallow_copy () const override
 Copies this node without copying any associated arrays. More...
 
const std::string tostring () const override
 Returns a string representation of this slice item (single-line custom format). More...
 
const std::string tostring_part () const
 
bool preserves_type (const Index64 &advanced) const override
 Returns true if this slice would preserve an array's slice and therefore should pass on Content::parameters. More...
 
virtual bool referentially_equal (const SliceItemPtr &other) const override
 Returns true if this slice item has all the same buffers and parameters as other; false otherwise. More...
 
- Public Member Functions inherited from SliceItem
virtual ~SliceItem ()
 Virtual destructor acts as a first non-inline virtual function that determines a specific translation unit in which vtable shall be emitted. More...
 

Detailed Description

template<typename T>
class awkward::SliceJaggedOf< T >

Represents an array of nested lists, where the content may be SliceArrayOf, SliceMissingOf, or SliceJaggedOf (no equivalent in NumPy).

Currently, the only type specialization is T = int64_t.

Constructor & Destructor Documentation

◆ SliceJaggedOf()

SliceJaggedOf ( const IndexOf< T > &  offsets,
const SliceItemPtr content 
)

Creates a SliceJaggedOf with a full set of parameters.

Parameters
offsetsPositions where one nested list stops and the next starts in the content in the same sense as ListOffsetArray. The offsets must be monotonically increasing and its length is one greater than the length of the array it represents. As such, it must always have at least one element.
contentThe contiguous content of the nested lists, like ListOffsetArray's content.

Member Function Documentation

◆ content()

const SliceItemPtr content ( ) const

The contiguous content of the nested lists, like ListOffsetArray's content.

◆ length()

int64_t length ( ) const

The length of the array: len(offsets) - 1.

◆ offsets()

const IndexOf<T> offsets ( ) const

Positions where one nested list stops and the next starts in the content in the same sense as ListOffsetArray.

The offsets must be monotonically increasing and its length is one greater than the length of the array it represents. As such, it must always have at least one element.

◆ preserves_type()

bool preserves_type ( const Index64 advanced) const
overridevirtual

Returns true if this slice would preserve an array's slice and therefore should pass on Content::parameters.

Parameters
advancedThe index that is passed through Content::getitem_next.

Always true for SliceJaggedOf.

Note
This might not be the right choice; it should be revisited.

Implements SliceItem.

◆ referentially_equal()

virtual bool referentially_equal ( const SliceItemPtr other) const
overridevirtual

Returns true if this slice item has all the same buffers and parameters as other; false otherwise.

Parameters
otherThe slice item to compare this with.

Implements SliceItem.

◆ shallow_copy()

const SliceItemPtr shallow_copy ( ) const
overridevirtual

Copies this node without copying any associated arrays.

Implements SliceItem.

◆ tostring()

const std::string tostring ( ) const
overridevirtual

Returns a string representation of this slice item (single-line custom format).

Implements SliceItem.

◆ tostring_part()

const std::string tostring_part ( ) const

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