LILAC
Language to language Interop LAyer Compiler
|
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 |
Enumerator | |
---|---|
F_CXX |
Definition at line 27 of file frontend.h.
|
constexpr |
|
inline |
|
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.
c | The number of indentation character |