Xreate
The Xreate programming language
Public Member Functions | List of all members
AdvancedInstructions Class Reference

Advanced compilation primitives. More...

#include <advancedinstructions.h>

Detailed Description

Advanced compilation primitives.

Public Member Functions

llvm::Value * compileArrayIndex (llvm::Value *aggregate, std::vector< llvm::Value *> indexes, std::string ident="")
 Array subscript access operator compilation.
 
llvm::Value * compileStructIndex (llvm::Value *aggregate, const ExpandedType &t, const std::string &idx)
 Struct field access operator compilation.
 
llvm::Value * compileMapSolidOutput (const Expression &expr, const std::string hintRetVar="")
 loop map statement compilation
 
llvm::Value * compileFold (const Expression &fold, const std::string &ident="")
 loop fold statement compilation
 
llvm::Value * compileFoldInf (const Expression &fold, const std::string &ident="")
 loop statement compilation
 
llvm::Value * compileIf (const Expression &exprIf, const std::string &ident)
 if statement compilation
 
llvm::Value * compileSwitch (const Expression &exprSwitch, const std::string &hintRetVar)
 switch statement compilation
 
llvm::Value * compileSwitchVariant (const Expression &exprSwitch, const std::string &hintRetVar)
 switch statement compilation
 
llvm::Value * compileConstantStringAsPChar (const std::string &data, const std::string &hintRetVar)
 switch variant statement compilation
 
llvm::Value * compileListAsSolidArray (const Expression &expr, const std::string &hintRetVar)
 Contiguous memory list implementation.
 
llvm::Value * compileSequence (const Expression &expr)
 seq statement compilation
 

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