Chrysalis - Pattern
Loading...
Searching...
No Matches
Chrysalis::Project Class Reference

#include <Project.h>

Public Member Functions

 Project (std::string name, std::unique_ptr< ProjectSpace > space, std::unique_ptr< PatternsContainer > patterns, std::unique_ptr< ParametersContainer > parameters, std::unique_ptr< OptionsContainer > options, std::unique_ptr< ExpressionsContainer > expressions, std::unique_ptr< InstructionsContainer > instructions)
 ~Project ()
std::vector< char > bytes () const
std::string getName ()
void setName (const std::string &name)
void execute ()
void onExecuted (const std::function< void()> &function)
ProjectSpace * getSpace () const
OptionsContainer * getOptions () const
PatternsContainer * getPatterns () const
ParametersContainer * getParameters () const
ExpressionsContainer * getExpressions () const
InstructionsContainer * getInstructions () const

Static Public Member Functions

static std::unique_ptr< Project > create ()
static std::unique_ptr< Project > create (const std::string &name)
static std::unique_ptr< Project > fromBytes (const char *bytes, size_t size)
static std::unique_ptr< Project > read (const std::string &filePath)
static void write (const std::string &filePath, const Project &project)

Static Public Attributes

static constexpr auto PROJECT_FILE_SUFFIX = "chrysalis"
static constexpr auto PROJECT_NAME_FILTER = "Chrysalis Project (*.chrysalis)"

Friends

template<class Archive>
void serialize (Archive &archive, Project &project, const unsigned int version)
template<class Archive>
void save_construct_data (Archive &archive, const Project *obj, const unsigned int)
template<class Archive>
void load_construct_data (Archive &archive, Project *obj, const unsigned int)

Constructor & Destructor Documentation

◆ Project()

Project::Project ( std::string name,
std::unique_ptr< ProjectSpace > space,
std::unique_ptr< PatternsContainer > patterns,
std::unique_ptr< ParametersContainer > parameters,
std::unique_ptr< OptionsContainer > options,
std::unique_ptr< ExpressionsContainer > expressions,
std::unique_ptr< InstructionsContainer > instructions )
explicit
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ~Project()

Project::~Project ( )

Member Function Documentation

◆ bytes()

std::vector< char > Project::bytes ( ) const
Here is the caller graph for this function:

◆ create() [1/2]

std::unique_ptr< Project > Project::create ( )
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ create() [2/2]

std::unique_ptr< Project > Project::create ( const std::string & name)
static

◆ execute()

void Project::execute ( )

◆ fromBytes()

std::unique_ptr< Project > Project::fromBytes ( const char * bytes,
size_t size )
static
Here is the call graph for this function:

◆ getExpressions()

ExpressionsContainer * Project::getExpressions ( ) const
nodiscard
Here is the call graph for this function:

◆ getInstructions()

InstructionsContainer * Project::getInstructions ( ) const
nodiscard

◆ getName()

std::string Project::getName ( )

◆ getOptions()

OptionsContainer * Project::getOptions ( ) const
nodiscard
Here is the call graph for this function:

◆ getParameters()

ParametersContainer * Project::getParameters ( ) const
nodiscard
Here is the call graph for this function:

◆ getPatterns()

PatternsContainer * Project::getPatterns ( ) const
nodiscard
Here is the call graph for this function:

◆ getSpace()

ProjectSpace * Project::getSpace ( ) const
nodiscard

◆ onExecuted()

void Project::onExecuted ( const std::function< void()> & function)

◆ read()

std::unique_ptr< Project > Project::read ( const std::string & filePath)
static
Here is the call graph for this function:

◆ setName()

void Project::setName ( const std::string & name)

◆ write()

void Project::write ( const std::string & filePath,
const Project & project )
static
Here is the call graph for this function:

◆ load_construct_data

template<class Archive>
void load_construct_data ( Archive & archive,
Project * obj,
const unsigned int  )
friend

◆ save_construct_data

template<class Archive>
void save_construct_data ( Archive & archive,
const Project * obj,
const unsigned int  )
friend

◆ serialize

template<class Archive>
void serialize ( Archive & archive,
Project & project,
const unsigned int version )
friend

Member Data Documentation

◆ PROJECT_FILE_SUFFIX

auto Chrysalis::Project::PROJECT_FILE_SUFFIX = "chrysalis"
staticconstexpr

◆ PROJECT_NAME_FILTER

auto Chrysalis::Project::PROJECT_NAME_FILTER = "Chrysalis Project (*.chrysalis)"
staticconstexpr

The documentation for this class was generated from the following files:
  • /opt/buildagent/work/edabedf7a47abebc/pattern/include/Project.h
  • /opt/buildagent/work/edabedf7a47abebc/pattern/src/Project.cpp