LILAC
Language to language Interop LAyer Compiler
Loading...
Searching...
No Matches
lilac::csharp::CSharpBackendAction Class Referencefinal

An action that generates C# bridge of given interface representation using P/Invoke. More...

#include <module.h>

Inheritance diagram for lilac::csharp::CSharpBackendAction:
Collaboration diagram for lilac::csharp::CSharpBackendAction:

Public Member Functions

 CSharpBackendAction ()
 
int Run (std::string confPath, std::string libPath, std::string outPath, std::vector< std::string > argv) const override
 Runs action with given paths.
 
- Public Member Functions inherited from lilac::shared::BackendAction
 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.
 

Additional Inherited Members

- Static Public Member Functions inherited from lilac::shared::BackendAction
static const std::vector< BackendAction * > & GetRegistered ()
 Gets all registered actions.
 

Detailed Description

An action that generates C# bridge of given interface representation using P/Invoke.

Definition at line 29 of file module.h.

Constructor & Destructor Documentation

◆ CSharpBackendAction()

lilac::csharp::CSharpBackendAction::CSharpBackendAction ( )

Definition at line 43 of file module.cxx.

Member Function Documentation

◆ Run()

int lilac::csharp::CSharpBackendAction::Run ( std::string confPath,
std::string libPath,
std::string outPath,
std::vector< std::string > argv ) const
nodiscardoverridevirtual

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

Implements lilac::shared::BackendAction.

Definition at line 48 of file module.cxx.


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