OpenVDB 12.0.0
 
Loading...
Searching...
No Matches
Tokens.h File Reference

Various function and operator tokens used throughout the AST and code generation. More...

#include "../Exceptions.h"
#include <openvdb/version.h>
#include <openvdb/Types.h>
#include <stdexcept>

Go to the source code of this file.

Namespaces

namespace  openvdb
 
namespace  openvdb::v12_0
 
namespace  openvdb::v12_0::ax
 
namespace  openvdb::v12_0::ax::ast
 
namespace  openvdb::v12_0::ax::ast::tokens
 

Enumerations

enum  CoreType {
  BOOL = 0 , CHAR , INT16 , INT32 ,
  INT64 , FLOAT , DOUBLE , VEC2I ,
  VEC2F , VEC2D , VEC3I , VEC3F ,
  VEC3D , VEC4I , VEC4F , VEC4D ,
  MAT3F , MAT3D , MAT4F , MAT4D ,
  QUATF , QUATD , STRING , UNKNOWN
}
 
enum  OperatorToken {
  PLUS = 0 , MINUS , MULTIPLY , DIVIDE ,
  MODULO , AND , OR , NOT ,
  EQUALSEQUALS , NOTEQUALS , MORETHAN , LESSTHAN ,
  MORETHANOREQUAL , LESSTHANOREQUAL , SHIFTLEFT , SHIFTRIGHT ,
  BITAND , BITOR , BITXOR , BITNOT ,
  EQUALS , PLUSEQUALS , MINUSEQUALS , MULTIPLYEQUALS ,
  DIVIDEEQUALS , MODULOEQUALS , SHIFTLEFTEQUALS , SHIFTRIGHTEQUALS ,
  BITANDEQUALS , BITXOREQUALS , BITOREQUALS
}
 
enum  OperatorType {
  ARITHMETIC = 0 , LOGICAL , RELATIONAL , BITWISE ,
  ASSIGNMENT , UNKNOWN_OPERATOR
}
 
enum  LoopToken { FOR = 0 , DO , WHILE }
 
enum  KeywordToken { RETURN = 0 , BREAK , CONTINUE }
 

Functions

CoreType tokenFromTypeString (const std::string &type)
 
std::string typeStringFromToken (const CoreType type)
 
OperatorType operatorType (const OperatorToken token)
 
OperatorToken operatorTokenFromName (const std::string &name)
 
std::string operatorNameFromToken (const OperatorToken token)
 
std::string loopNameFromToken (const LoopToken loop)
 
std::string keywordNameFromToken (const KeywordToken keyw)
 

Detailed Description

Various function and operator tokens used throughout the AST and code generation.

Authors
Nick Avramoussis