The Psyche Project
Classes | Public Member Functions | Static Public Member Functions | List of all members
psy::C::Compilation Class Reference

The Compilation class. More...

#include <Compilation.h>

Classes

struct  CompilationImpl
 

Public Member Functions

const Assemblyassembly () const
 
void addSyntaxTree (const SyntaxTree *tree)
 
void addSyntaxTrees (std::vector< const SyntaxTree * > trees)
 
std::vector< const SyntaxTree * > syntaxTrees () const
 
const SemanticModelsemanticModel (const SyntaxTree *tree) const
 

Static Public Member Functions

static std::unique_ptr< Compilationcreate (const std::string &id)
 

Detailed Description

The Compilation class.

Note
This API is inspired by that of Microsoft.CodeAnalysis.Compilation from Roslyn, the .NET Compiler Platform.

Member Function Documentation

◆ addSyntaxTree()

void Compilation::addSyntaxTree ( const SyntaxTree tree)

Add a SyntaxTree to this Compilation.

◆ addSyntaxTrees()

void Compilation::addSyntaxTrees ( std::vector< const SyntaxTree * >  trees)

Add SyntaxTrees to this Compilation.

◆ assembly()

const Assembly * Compilation::assembly ( ) const

The Assembly produced by this Compilation.

◆ create()

std::unique_ptr< Compilation > Compilation::create ( const std::string &  id)
static

Create an empty compilation identified by id with SyntaxTree tree.

◆ semanticModel()

const SemanticModel * Compilation::semanticModel ( const SyntaxTree tree) const

The SemanticModel for the SyntaxTree tree in this Compilation.

◆ syntaxTrees()

std::vector< const SyntaxTree * > Compilation::syntaxTrees ( ) const

The SyntaxTrees in this Compilation.


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