LILAC
Language to language Interop LAyer Compiler
Loading...
Searching...
No Matches
lilac::shared Namespace Reference

Classes

struct  __FilledString
 
struct  __IndentationVector
 
class  AssemblyVisitor
 An interface visitor for a whole assembly. More...
 
class  BackendAction
 An action that generates language-specific bridge of given interface representation. More...
 
class  exception
 
class  FrontendAction
 An action that generates interface representation from codes. More...
 
class  GenericInterfaceVisitor
 A composite ASTVisitor wrapping other ASTVisitor(s) More...
 
class  InterfaceVisitor
 A helper class to traverse interface graph. More...
 

Concepts

concept  TVisitor
 

Enumerations

enum  BackendKind { B_CSharp }
 
enum  FrontendKind { F_CXX }
 

Functions

template<int... Ts>
constexpr const char * __GetIndentation (int c, std::integer_sequence< int, Ts... >)
 
constexpr const char * GetIndent (int c=1)
 Gets an indentation string with specified length.
 
std::ostream & endl (std::ostream &__os)
 Write a newline on stream.
 

Variables

constexpr int MaxIntrinIndent = 255
 

Enumeration Type Documentation

◆ BackendKind

Enumerator
B_CSharp 

Definition at line 27 of file backend.h.

◆ FrontendKind

Enumerator
F_CXX 

Definition at line 27 of file frontend.h.

Function Documentation

◆ __GetIndentation()

template<int... Ts>
const char * lilac::shared::__GetIndentation ( int c,
std::integer_sequence< int, Ts... >  )
constexpr

Definition at line 56 of file char.h.

◆ endl()

std::ostream & lilac::shared::endl ( std::ostream & __os)
inline

Write a newline on stream.

Definition at line 83 of file char.h.

◆ GetIndent()

const char * lilac::shared::GetIndent ( int c = 1)
constexpr

Gets an indentation string with specified length.

An indentation strings shorter than lilac::shared::MaxIntrinIndent are generated during compile-time. When you specified compile-time evaluable expression for c, Calling expression for lilac::shared::GetIndent will be converted at compile-time.

If you specify larger length than lilac::shared::MaxIntrinIndent, An indentation strings will be generated on run-time and not be cached. You should avoid use of very large indentation.

Parameters
cThe number of indentation character
Returns
Indentation string with specified length

Definition at line 75 of file char.h.

Variable Documentation

◆ MaxIntrinIndent

int lilac::shared::MaxIntrinIndent = 255
constexpr

Definition at line 27 of file char.h.