Cthulhu  0.2.10
Cthulhu compiler collection
query.h File Reference
#include "core/compiler.h"
#include "cthulhu/tree/tree.h"
Include dependency graph for query.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

CT_BEGIN_API CT_TREE_API const char * tree_kind_to_string (tree_kind_t kind)
 
CT_TREE_API const char * tree_to_string (const tree_t *self)
 
CT_TREE_API char * tree_to_string_arena (const tree_t *self, arena_t *arena)
 
CT_TREE_API const tree_attribs_ttree_get_attrib (const tree_t *self)
 
CT_TREE_API bool tree_has_vis (const tree_t *self, tree_visibility_t visibility)
 
CT_TREE_API bool tree_has_storage (const tree_t *self)
 
CT_TREE_API tree_quals_t tree_get_storage_quals (const tree_t *self)
 
CT_TREE_API const tree_ttree_get_storage_type (const tree_t *self)
 
CT_TREE_API size_t tree_get_storage_size (const tree_t *self)
 
CT_PUREFN CT_TREE_API vector_ttree_enum_get_cases (const tree_t *self)
 
CT_PUREFN CT_TREE_API const tree_ttree_fn_get_return (const tree_t *self)
 
CT_PUREFN CT_TREE_API const vector_ttree_fn_get_params (const tree_t *self)
 
CT_PUREFN CT_TREE_API tree_arity_t tree_fn_get_arity (const tree_t *self)
 
CT_PUREFN CT_TREE_API tree_ttree_ty_get_field (const tree_t *self, const char *name)
 
CT_PUREFN CT_TREE_API tree_ttree_ty_get_case (const tree_t *self, const char *name)
 
CT_PUREFN CT_TREE_API bool tree_ty_is_address (const tree_t *type)
 
CT_PUREFN CT_TREE_API tree_quals_t tree_ty_get_quals (const tree_t *self)
 
CT_PUREFN CT_TREE_API const tree_ttree_ty_load_type (const tree_t *self)
 get the type of a type after it has been loaded More...
 

Function Documentation

◆ tree_enum_get_cases()

CT_PUREFN CT_TREE_API vector_t* tree_enum_get_cases ( const tree_t self)

enum queries

enums

Definition at line 156 of file query.c.

◆ tree_fn_get_arity()

CT_PUREFN CT_TREE_API tree_arity_t tree_fn_get_arity ( const tree_t self)

Definition at line 191 of file query.c.

◆ tree_fn_get_params()

CT_PUREFN CT_TREE_API const vector_t* tree_fn_get_params ( const tree_t self)

Definition at line 179 of file query.c.

◆ tree_fn_get_return()

CT_PUREFN CT_TREE_API const tree_t* tree_fn_get_return ( const tree_t self)

closure + function queries

fns

Definition at line 167 of file query.c.

◆ tree_get_attrib()

CT_TREE_API const tree_attribs_t* tree_get_attrib ( const tree_t self)

Definition at line 83 of file query.c.

◆ tree_get_storage_quals()

CT_TREE_API tree_quals_t tree_get_storage_quals ( const tree_t self)

storage decl queries

Definition at line 126 of file query.c.

◆ tree_get_storage_size()

CT_TREE_API size_t tree_get_storage_size ( const tree_t self)

Definition at line 144 of file query.c.

◆ tree_get_storage_type()

CT_TREE_API const tree_t* tree_get_storage_type ( const tree_t self)

Definition at line 136 of file query.c.

◆ tree_has_storage()

CT_TREE_API bool tree_has_storage ( const tree_t self)

Definition at line 114 of file query.c.

◆ tree_has_vis()

CT_TREE_API bool tree_has_vis ( const tree_t self,
tree_visibility_t  visibility 
)

Definition at line 98 of file query.c.

◆ tree_kind_to_string()

CT_BEGIN_API CT_TREE_API const char* tree_kind_to_string ( tree_kind_t  kind)

Definition at line 23 of file query.c.

◆ tree_to_string()

CT_TREE_API const char* tree_to_string ( const tree_t self)

Definition at line 40 of file query.c.

◆ tree_to_string_arena()

CT_TREE_API char* tree_to_string_arena ( const tree_t self,
arena_t arena 
)

Definition at line 46 of file query.c.

◆ tree_ty_get_case()

CT_PUREFN CT_TREE_API tree_t* tree_ty_get_case ( const tree_t self,
const char *  name 
)

Definition at line 231 of file query.c.

◆ tree_ty_get_field()

CT_PUREFN CT_TREE_API tree_t* tree_ty_get_field ( const tree_t self,
const char *  name 
)

type queries

Definition at line 224 of file query.c.

◆ tree_ty_get_quals()

CT_PUREFN CT_TREE_API tree_quals_t tree_ty_get_quals ( const tree_t self)

Definition at line 257 of file query.c.

◆ tree_ty_is_address()

CT_PUREFN CT_TREE_API bool tree_ty_is_address ( const tree_t type)

Definition at line 238 of file query.c.

◆ tree_ty_load_type()

CT_PUREFN CT_TREE_API const tree_t* tree_ty_load_type ( const tree_t self)

get the type of a type after it has been loaded

Note
pointer -> type, reference -> type, etc.
Parameters
selfthe type to load from
Returns
const tree_t* the loaded type

Definition at line 267 of file query.c.