JUCE  v5.4.1-191-g0ab5e696f
JUCE API
Looking for a senior C++ dev?
I'm looking for work. Hire me!
littlefoot::Compiler Struct Reference

This class compiles littlefoot source code into a littlefoot::Program object which can be executed by a littlefoot::Runner. More...

#include <juce_LittleFootCompiler.h>

Collaboration diagram for littlefoot::Compiler:

Public Member Functions

 Compiler ()=default
 
void addNativeFunctions (const char *const *functionPrototypes)
 Gives the compiler a zero-terminated list of native function prototypes to use when parsing function calls. More...
 
template<typename RunnerType >
void addNativeFunctions (const RunnerType &runner)
 Tells the compiler to use the list of native function prototypes from this littlefoot::Runner object. More...
 
Result compile (const String &sourceCode, uint32 defaultHeapSize, const Array< File > &searchPaths={})
 Compiles a littlefoot program. More...
 
Program getCompiledProgram () const noexcept
 After a successful compilation, this returns the finished Program. More...
 

Public Attributes

Array< uint8compiledObjectCode
 After a successful call to compile(), this contains the bytecode generated. More...
 

Detailed Description

This class compiles littlefoot source code into a littlefoot::Program object which can be executed by a littlefoot::Runner.

{Blocks}

Constructor & Destructor Documentation

◆ Compiler()

littlefoot::Compiler::Compiler ( )
default

Member Function Documentation

◆ addNativeFunctions() [1/2]

void littlefoot::Compiler::addNativeFunctions ( const char *const *  functionPrototypes)
inline

Gives the compiler a zero-terminated list of native function prototypes to use when parsing function calls.

◆ addNativeFunctions() [2/2]

template<typename RunnerType >
void littlefoot::Compiler::addNativeFunctions ( const RunnerType &  runner)
inline

Tells the compiler to use the list of native function prototypes from this littlefoot::Runner object.

◆ compile()

Result littlefoot::Compiler::compile ( const String &  sourceCode,
uint32  defaultHeapSize,
const Array< File > &  searchPaths = {} 
)
inline

Compiles a littlefoot program.

If there's an error, this returns it, otherwise the compiled bytecode is placed in the compiledObjectCode member.

References compiledObjectCode.

◆ getCompiledProgram()

Program littlefoot::Compiler::getCompiledProgram ( ) const
inlinenoexcept

After a successful compilation, this returns the finished Program.

References compiledObjectCode.

Member Data Documentation

◆ compiledObjectCode

Array<uint8> littlefoot::Compiler::compiledObjectCode

After a successful call to compile(), this contains the bytecode generated.

A littlefoot::Program object can be created directly from this array.

Referenced by compile(), and getCompiledProgram().


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