Luma 0.1.0
A low-level compiled alternative to C, C++, and more!
Loading...
Searching...
No Matches
Functions
preprocessor.c File Reference
#include "../ast.h"
#include <stdio.h>
#include <string.h>
Include dependency graph for preprocessor.c:

Functions

AstNodecreate_module_node (ArenaAllocator *arena, const char *name, const char *doc_comment, int potions, AstNode **body, size_t body_count, size_t line, size_t column)
 
AstNodecreate_use_node (ArenaAllocator *arena, const char *module_name, const char *alias, size_t line, size_t column)
 
AstNodecreate_os_node (ArenaAllocator *arena, char **platforms, AstNode **bodies, size_t arm_count, bool has_default, AstNode *default_body, size_t line, size_t column)
 
AstNodecreate_link_node (ArenaAllocator *arena, const char *lib_name, size_t line, size_t column)
 
void apply_dll_import (AstNode *func_node, const char *dll_name, const char *callconv)
 
void apply_lib_import (AstNode *func_node, const char *lib_name)
 

Function Documentation

◆ apply_dll_import()

void apply_dll_import ( AstNode func_node,
const char *  dll_name,
const char *  callconv 
)

◆ apply_lib_import()

void apply_lib_import ( AstNode func_node,
const char *  lib_name 
)

◆ create_link_node()

AstNode * create_link_node ( ArenaAllocator arena,
const char *  lib_name,
size_t  line,
size_t  column 
)

◆ create_module_node()

AstNode * create_module_node ( ArenaAllocator arena,
const char *  name,
const char *  doc_comment,
int  potions,
AstNode **  body,
size_t  body_count,
size_t  line,
size_t  column 
)

◆ create_os_node()

AstNode * create_os_node ( ArenaAllocator arena,
char **  platforms,
AstNode **  bodies,
size_t  arm_count,
bool  has_default,
AstNode default_body,
size_t  line,
size_t  column 
)

◆ create_use_node()

AstNode * create_use_node ( ArenaAllocator arena,
const char *  module_name,
const char *  alias,
size_t  line,
size_t  column 
)