LILAC
Language to language Interop LAyer Compiler
Loading...
Searching...
No Matches
lilac::shared::BackendAction Class Referenceabstract

An action that generates language-specific bridge of given interface representation. More...

#include <backend.h>

Inheritance diagram for lilac::shared::BackendAction:

Public Member Functions

 BackendAction (BackendKind kind, std::string name, std::string desc)
 
virtual ~BackendAction ()=default
 
const std::string & Name () const
 Gets the name of this action.
 
const std::string & Desc () const
 Gets the description of this action.
 
BackendKind Kind () const
 Gets the kind of this action.
 
virtual int Run (std::string confPath, std::string libPath, std::string outPath, std::vector< std::string > argv) const =0
 Runs action with given paths.
 

Static Public Member Functions

static const std::vector< BackendAction * > & GetRegistered ()
 Gets all registered actions.
 

Detailed Description

An action that generates language-specific bridge of given interface representation.

Definition at line 35 of file backend.h.

Constructor & Destructor Documentation

◆ BackendAction()

lilac::shared::BackendAction::BackendAction ( BackendKind kind,
std::string name,
std::string desc )

Definition at line 28 of file backend.cxx.

◆ ~BackendAction()

virtual lilac::shared::BackendAction::~BackendAction ( )
virtualdefault

Member Function Documentation

◆ Desc()

const std::string & lilac::shared::BackendAction::Desc ( ) const
nodiscard

Gets the description of this action.

Returns
The description of this action

Definition at line 39 of file backend.cxx.

◆ GetRegistered()

const std::vector< lilac::shared::BackendAction * > & lilac::shared::BackendAction::GetRegistered ( )
static

Gets all registered actions.

Returns
All registered actions

Definition at line 49 of file backend.cxx.

◆ Kind()

lilac::shared::BackendKind lilac::shared::BackendAction::Kind ( ) const
nodiscard

Gets the kind of this action.

Returns
The kind of this action

Definition at line 44 of file backend.cxx.

◆ Name()

const std::string & lilac::shared::BackendAction::Name ( ) const
nodiscard

Gets the name of this action.

Returns
The name of this action

Definition at line 34 of file backend.cxx.

◆ Run()

virtual int lilac::shared::BackendAction::Run ( std::string confPath,
std::string libPath,
std::string outPath,
std::vector< std::string > argv ) const
nodiscardpure virtual

Runs action with given paths.

Parameters
confPathA path of XML source that contains interface representation data
libPathA path of bridge used by target language of the action
outPathA path to place output
Returns
Zero if action completed successfully; otherwise, non-zero returned

Implemented in lilac::csharp::CSharpBackendAction.


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