Tenncor
Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
teq::Functor Struct Referencefinal

Functor of the graph mapping to operators specified by opcode argument. More...

#include <functor.hpp>

Inheritance diagram for teq::Functor:
Inheritance graph
[legend]
Collaboration diagram for teq::Functor:
Collaboration graph
[legend]

Public Member Functions

Functoroperator= (const Functor &other)=delete
 
Functoroperator= (Functor &&other)=delete
 
const Shapeshape (void) const override
 Implementation of iTensor. More...
 
std::string to_string (void) const override
 Implementation of iTensor. More...
 
Opcode get_opcode (void) const override
 Implementation of iFunctor. More...
 
const ArgsTget_children (void) const override
 Implementation of iFunctor. More...
 
void update_child (FuncArg arg, size_t index) override
 Implementation of iFunctor. More...
 
- Public Member Functions inherited from teq::iFunctor
virtual ~iFunctor (void)=default
 
void accept (iTraveler &visiter) override
 Implementation of iTensor. More...
 
- Public Member Functions inherited from teq::iTensor
virtual ~iTensor (void)=default
 

Static Public Member Functions

static Functorget (Opcode opcode, ArgsT args)
 Return a Functor with with input tensor and meta arguments. More...
 
static Functorget (const Functor &other)
 
static Functorget (Functor &&other)
 

Private Member Functions

 Functor (Opcode opcode, Shape shape, ArgsT args)
 
 Functor (const Functor &other)=default
 
 Functor (Functor &&other)=default
 

Private Attributes

Opcode opcode_
 Operation encoding. More...
 
Shape shape_
 Shape info built at construction time according to arguments. More...
 
ArgsT args_
 Tensor arguments (and children) More...
 

Detailed Description

Functor of the graph mapping to operators specified by opcode argument.

Constructor & Destructor Documentation

◆ Functor() [1/3]

teq::Functor::Functor ( Opcode  opcode,
Shape  shape,
ArgsT  args 
)
inlineprivate

◆ Functor() [2/3]

teq::Functor::Functor ( const Functor other)
privatedefault

◆ Functor() [3/3]

teq::Functor::Functor ( Functor &&  other)
privatedefault

Member Function Documentation

◆ get() [1/3]

static Functor* teq::Functor::get ( Opcode  opcode,
ArgsT  args 
)
inlinestatic

Return a Functor with with input tensor and meta arguments.

◆ get() [2/3]

static Functor* teq::Functor::get ( const Functor other)
inlinestatic

◆ get() [3/3]

static Functor* teq::Functor::get ( Functor &&  other)
inlinestatic

◆ get_children()

const ArgsT& teq::Functor::get_children ( void  ) const
inlineoverridevirtual

Implementation of iFunctor.

Implements teq::iFunctor.

◆ get_opcode()

Opcode teq::Functor::get_opcode ( void  ) const
inlineoverridevirtual

Implementation of iFunctor.

Implements teq::iFunctor.

◆ operator=() [1/2]

Functor& teq::Functor::operator= ( const Functor other)
delete

◆ operator=() [2/2]

Functor& teq::Functor::operator= ( Functor &&  other)
delete

◆ shape()

const Shape& teq::Functor::shape ( void  ) const
inlineoverridevirtual

Implementation of iTensor.

Implements teq::iTensor.

◆ to_string()

std::string teq::Functor::to_string ( void  ) const
inlineoverridevirtual

Implementation of iTensor.

Implements teq::iTensor.

◆ update_child()

void teq::Functor::update_child ( FuncArg  arg,
size_t  index 
)
inlineoverridevirtual

Implementation of iFunctor.

Implements teq::iFunctor.

Member Data Documentation

◆ args_

ArgsT teq::Functor::args_
private

Tensor arguments (and children)

◆ opcode_

Opcode teq::Functor::opcode_
private

Operation encoding.

◆ shape_

Shape teq::Functor::shape_
private

Shape info built at construction time according to arguments.


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