OmniSciDB  72c90bc290
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Cast Class Reference

#include <ResultSetReductionOps.h>

+ Inheritance diagram for Cast:
+ Collaboration diagram for Cast:

Public Types

enum  CastOp { CastOp::Trunc, CastOp::SExt, CastOp::BitCast }
 

Public Member Functions

 Cast (const CastOp op, const Value *source, const Type type, const std::string &label)
 
CastOp op () const
 
const Valuesource () const
 
void run (ReductionInterpreterImpl *interpreter) override
 
- Public Member Functions inherited from Instruction
 Instruction (const Type type, const std::string &label)
 
- Public Member Functions inherited from Value
 Value (const Type type, const std::string &label)
 
Type type () const
 
size_t id () const
 
const std::string & label () const
 
virtual ~Value ()=default
 

Private Attributes

const CastOp op_
 
const Valuesource_
 

Detailed Description

Definition at line 371 of file ResultSetReductionOps.h.

Member Enumeration Documentation

enum Cast::CastOp
strong
Enumerator
Trunc 
SExt 
BitCast 

Definition at line 373 of file ResultSetReductionOps.h.

373  {
374  Trunc,
375  SExt,
376  BitCast,
377  };

Constructor & Destructor Documentation

Cast::Cast ( const CastOp  op,
const Value source,
const Type  type,
const std::string &  label 
)
inline

Definition at line 379 of file ResultSetReductionOps.h.

380  : Instruction(type, label), op_(op), source_(source) {}
const std::string & label() const
const Value * source_
Type type() const
Instruction(const Type type, const std::string &label)
CastOp op() const
const CastOp op_

Member Function Documentation

CastOp Cast::op ( ) const
inline

Definition at line 382 of file ResultSetReductionOps.h.

References op_.

382 { return op_; }
const CastOp op_
void Cast::run ( ReductionInterpreterImpl interpreter)
overridevirtual

Implements Instruction.

Definition at line 379 of file ResultSetReductionInterpreter.cpp.

References ReductionInterpreterImpl::runCast().

379  {
380  ReductionInterpreterImpl::runCast(this, interpreter);
381 }
static void runCast(const Instruction *instruction, ReductionInterpreterImpl *interpreter)

+ Here is the call graph for this function:

const Value* Cast::source ( ) const
inline

Definition at line 384 of file ResultSetReductionOps.h.

References source_.

384 { return source_; }
const Value * source_

Member Data Documentation

const CastOp Cast::op_
private

Definition at line 389 of file ResultSetReductionOps.h.

Referenced by op().

const Value* Cast::source_
private

Definition at line 390 of file ResultSetReductionOps.h.

Referenced by source().


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