void Compile_CheckAssigns( const SymbTable_ptr symb_table, node_ptr procs )
void Compile_ConstructHierarchy( SymbTable_ptr st, SymbLayer_ptr layer, node_ptr module_name, node_ptr instance_name, node_ptr actual, FlatHierarchy_ptr result, HrcNode_ptr hrc_result, hash_ptr instances )
boolean Compile_DeclareVariable( SymbTable_ptr st, SymbLayer_ptr layer, node_ptr name, SymbType_ptr type, node_ptr context, Instantiation_Variables_Mode_Type mode )
compile_instantiate_var
node_ptr Compile_FlattenSexpExpandDefine( const SymbTable_ptr symb_table, node_ptr sexp, node_ptr context )
Flatten_GetDefinition
Compile_FlattenSexp
node_ptr Compile_FlattenSexp( const SymbTable_ptr symb_table, node_ptr sexp, node_ptr context )
Flatten_GetDefinition
Compile_FlattenSexpExpandDefine
SymbType_ptr Compile_InstantiateType( SymbTable_ptr st, SymbLayer_ptr layer, node_ptr name, node_ptr type, node_ptr context )
void Compile_ProcessHierarchy( SymbTable_ptr symb_table, SymbLayer_ptr layer, FlatHierarchy_ptr hierarchy, node_ptr name, boolean create_process_variables, boolean calc_vars_constr )
void Compile_WriteBoolFsm_udg( FILE* out, const SymbTable_ptr st, NodeList_ptr layers, const char* fsm_name, BoolSexpFsm_ptr bool_sexp_fsm )
void Compile_WriteBoolFsm( FILE* out, const SymbTable_ptr st, NodeList_ptr layers, const char* fsm_name, BoolSexpFsm_ptr bool_sexp_fsm, boolean force_flattening )
void Compile_WriteBoolModel_udg( FILE* out, BddEnc_ptr enc, NodeList_ptr layers, const char* fsm_name, BoolSexpFsm_ptr bool_sexp_fsm )
void Compile_WriteBoolModel( FILE* out, BddEnc_ptr enc, NodeList_ptr layers, const char* fsm_name, BoolSexpFsm_ptr bool_sexp_fsm, boolean force_flattening )
void Compile_WriteBoolSpecs_udg( FILE* out, BddEnc_ptr enc, FlatHierarchy_ptr hierarchy )
void Compile_WriteBoolSpecs( FILE* out, BddEnc_ptr enc, FlatHierarchy_ptr hierarchy )
void Compile_WriteFlattenFsm_udg( FILE* out, const SymbTable_ptr st, const array_t* layer_names, const char* fsm_name, FlatHierarchy_ptr hierarchy )
void Compile_WriteFlattenFsm( FILE* out, const SymbTable_ptr st, const array_t* layer_names, const char* fsm_name, FlatHierarchy_ptr hierarchy, boolean force_flattening )
void Compile_WriteFlattenModel_udg( FILE* out, const SymbTable_ptr st, const array_t* layer_names, const char* fsm_name, FlatHierarchy_ptr hierarchy )
void Compile_WriteFlattenModel( FILE* out, const SymbTable_ptr st, const array_t* layer_names, const char* fsm_name, FlatHierarchy_ptr hierarchy, boolean force_flattening )
void Compile_WriteFlattenSpecs_udg( FILE* out, const SymbTable_ptr st, FlatHierarchy_ptr hierarchy )
void Compile_WriteFlattenSpecs( FILE* out, const SymbTable_ptr st, FlatHierarchy_ptr hierarchy, boolean force_flattening )
void Compile_WriteObfuscatedFlattenModel( FILE* out, const SymbTable_ptr st, const array_t* layer_names, const char* fsm_name, FlatHierarchy_ptr hierarchy, boolean print_map, boolean force_flattening )
void Compile_WriteRestrictedFlattenModel( FILE* out, const SymbTable_ptr st, const array_t* layer_names, const char* fsm_name, FlatHierarchy_ptr hierarchy, boolean force_flattening )
int Compile_check_if_bool_model_was_built( FILE* err, boolean forced )
int Compile_check_if_encoding_was_built( FILE* err )
int Compile_check_if_flat_model_was_built( FILE* err, boolean forced )
int Compile_check_if_flattening_was_built( FILE* err )
int Compile_check_if_model_was_built( FILE* err, boolean forced )
void Compile_check_input_next( const SymbTable_ptr st, node_ptr expr, node_ptr context )
void Compile_check_next( const SymbTable_ptr st, node_ptr expr, node_ptr context, boolean is_one_next_allowed )
void Compile_cleanup_booleanizer_cache_about( SymbTable_ptr st, NodeList_ptr symbs )
node_ptr Compile_convert_to_dag_udg( SymbTable_ptr symb_table, node_ptr expr, hash_ptr dag_hash, hash_ptr defines )
node_ptr Compile_convert_to_dag( SymbTable_ptr symb_table, node_ptr expr, hash_ptr dag_hash, hash_ptr defines )
void Compile_destroy_dag_info_udg( hash_ptr dag_info, hash_ptr defines )
void Compile_destroy_dag_info( hash_ptr dag_info, hash_ptr defines )
Expr_ptr Compile_detexpr2bexpr_list( BddEnc_ptr enc, Expr_ptr expr )
Compile_detexpr2bexpr
Compile_expr2bexpr
expr2bexpr_recur
Expr_ptr Compile_detexpr2bexpr( BddEnc_ptr enc, Expr_ptr expr )
Compile_expr2bexpr
expr2bexpr_recur
Compile_detexpr2bexpr_list
Expr_ptr Compile_expr2bexpr( BddEnc_ptr enc, SymbLayer_ptr det_layer, Expr_ptr expr )
Compile_detexpr2bexpr
expr2bexpr_recur
FsmBuilder_ptr Compile_get_global_fsm_builder( )
PredicateNormaliser_ptr Compile_get_global_predicate_normaliser( )
hash_ptr Compile_get_obfuscation_map( const SymbTable_ptr symb_table )
void Compile_init_cmd( )
void Compile_init( )
boolean Compile_is_expr_booleanizable( const SymbTable_ptr st, node_ptr expr, boolean word_unbooleanizable, hash_ptr cache )
node_ptr Compile_make_dag_info_udg( node_ptr expr, hash_ptr hash )
node_ptr Compile_make_dag_info( node_ptr expr, hash_ptr hash )
Set_t Compile_make_sorted_vars_list_from_order( const SymbTable_ptr st, const NodeList_ptr vars, const NodeList_ptr vars_order )
node_ptr Compile_obfuscate_expression( const SymbTable_ptr symb_table, node_ptr expr, const hash_ptr obfuscation_map )
node_ptr Compile_pop_distrib_ops( node_ptr prop )
void Compile_print_array_define_udg( FILE* out, const node_ptr n )
void Compile_print_array_define( FILE* out, const node_ptr n )
void Compile_quit( )
void Compile_write_dag_defines_udg( FILE* out, hash_ptr defines )
void Compile_write_dag_defines( FILE* out, hash_ptr defines )
void compile_add_vars_to_hierarhcy( node_ptr name, SymbType_ptr type, FlatHierarchy_ptr fh )
void compile_build_model( boolean force_build )
void compile_check_print_io_atom_stack_assign( FILE * fd )
node_ptr compile_cmd_get_var_type( SymbType_ptr type )
void compile_cmd_print_type( FILE * file, node_ptr ntype, int threshold )
Expr_ptr compile_cmd_remove_assignments( Expr_ptr expr )
void compile_cmd_write_coi_prop_fsm( FlatHierarchy_ptr fh, Set_t cone, Set_t props, FILE* output_file )
void compile_cmd_write_coi_prop( Set_t cone, Set_t props, FILE* output_file )
void compile_cmd_write_global_coi_fsm( FlatHierarchy_ptr hierarchy, Prop_Type prop_type, FILE* output_file )
int compile_cmd_write_properties_coi( FlatHierarchy_ptr hierarchy, Prop_Type prop_type, boolean only_dump_coi, const char* file_name )
node_ptr compile_convert_to_dag_aux_udg( SymbTable_ptr symb_table, node_ptr expr, hash_ptr hash, unsigned int num_thres, unsigned int dep_thres, hash_ptr defines, const char* defines_prefix )
node_ptr compile_convert_to_dag_aux( SymbTable_ptr symb_table, node_ptr expr, hash_ptr hash, unsigned int num_thres, unsigned int dep_thres, hash_ptr defines, const char* defines_prefix )
void compile_create_boolean_model( )
hash_ptr compile_create_dag_info_from_hierarchy_udg( SymbTable_ptr st, FlatHierarchy_ptr hierarchy, SymbLayer_ptr det_layer, BddEnc_ptr enc )
hash_ptr compile_create_dag_info_from_hierarchy( SymbTable_ptr st, FlatHierarchy_ptr hierarchy, SymbLayer_ptr det_layer, BddEnc_ptr enc, boolean force_flattening, hash_ptr cdh )
void compile_create_flat_model( )
int compile_encode_variables( )
node_ptr compile_flatten_build_word_toint_ith_bit_case( node_ptr wexpr, int bit, boolean is_neg )
node_ptr compile_flatten_eval_number( SymbTable_ptr st, node_ptr n, node_ptr context )
int compile_flatten_get_int( node_ptr value )
node_ptr compile_flatten_normalise_value_list( node_ptr old_value_list )
node_ptr compile_flatten_rewrite_word_toint_cast( node_ptr body, SymbType_ptr type )
int compile_flatten_smv( boolean calc_vars_constrains )
assoc_retval compile_free_define_udg( char * key, char * data, char * arg )
assoc_retval compile_free_define( char * key, char * data, char * arg )
assoc_retval compile_free_node_udg( char * key, char * data, char * arg )
assoc_retval compile_free_node( char * key, char * data, char * arg )
node_ptr compile_get_rid_of_define_chain( SymbTable_ptr st, node_ptr expr, hash_ptr cdh )
void compile_insert_assign_hrc( HrcNode_ptr hrc_result, node_ptr cur_decl )
void compile_instantiate_by_name( SymbTable_ptr st, SymbLayer_ptr layer, node_ptr module_name, node_ptr instance_name, node_ptr actual, node_ptr * assign, FlatHierarchy_ptr result, HrcNode_ptr hrc_result, hash_ptr instances )
void compile_instantiate_vars( SymbTable_ptr st, SymbLayer_ptr layer, node_ptr var_list, node_ptr mod_name, node_ptr * assign, FlatHierarchy_ptr result, HrcNode_ptr hrc_result, hash_ptr instances )
compile_instantiate_var
void compile_instantiate_var( SymbTable_ptr st, SymbLayer_ptr layer, node_ptr name, node_ptr type, node_ptr context, node_ptr * assign, FlatHierarchy_ptr result, HrcNode_ptr hrc_result, hash_ptr instances )
symbol_hash
saying that the variable values are {0,1}
.M..N
, then
we add an entry in the symbol_hash
saying that the
variable values are {M, M+1, ..., N-1, N}
. If
M
is less or equal to N
, than an error occurs.
{a1, a2, ..., aN}
, then we add an entry in the
symbol_hash
saying that the variable values are
{a1, ..., aN}
. VAR
x : array 1..4 of boolean;
". We call this function
for 4 times, asking at each call i
(i
from 1
to 4) to declare the boolean variable x[i]
.instantiate_by_name with the name of the
instantiated module as root name (to extract its definition)
and as variable name as the name of the module (to perform
flattening).
compile_instantiate_vars
void compile_instantiate( SymbTable_ptr st, SymbLayer_ptr layer, node_ptr mod_def, node_ptr mod_name, node_ptr actual, node_ptr * assign, FlatHierarchy_ptr result, HrcNode_ptr hrc_result, hash_ptr instances )
compile_instantiate_var
compile_instantiate_vars
boolean compile_is_booleanizable_aux( const SymbTable_ptr st, node_ptr expr, node_ptr context, boolean word_unbooleanizable, hash_ptr cache )
node_ptr compile_make_dag_info_aux_udg( node_ptr expr, hash_ptr hash )
node_ptr compile_make_dag_info_aux( node_ptr expr, hash_ptr hash )
node_ptr compile_pack_dag_info_udg( unsigned int count, unsigned int depth )
node_ptr compile_pack_dag_info( unsigned int count, unsigned int depth, boolean admissible )
void compile_print_assign_udg( SymbTable_ptr st, FILE * out, node_ptr lhs, node_ptr rhs, hash_ptr dag_info, hash_ptr defines )
void compile_print_assign( SymbTable_ptr st, FILE * out, node_ptr lhs, node_ptr rhs, hash_ptr dag_info, hash_ptr defines )
void compile_set_dag_info_udg( node_ptr info, unsigned int count, unsigned int depth )
void compile_set_dag_info( node_ptr info, unsigned int count, unsigned int depth, boolean admissible )
void compile_symbtype_obfuscated_print( SymbType_ptr type, FILE* out, const SymbTable_ptr symb_table, hash_ptr obfuscation_map )
void compile_unpack_dag_info_udg( node_ptr info, unsigned int* count, unsigned int* depth )
void compile_unpack_dag_info( node_ptr info, unsigned int* count, unsigned int* depth, boolean* admissible )
void compile_write_bool_fsm( FILE* out, const SymbTable_ptr symb_table, NodeList_ptr layers, const char* fsm_name, BoolSexpFsm_ptr bool_sexp_fsm, hash_ptr dag_info, hash_ptr defines, boolean force_flattening, hash_ptr cdh )
void compile_write_bool_specs( FILE* out, BddEnc_ptr enc, SymbLayer_ptr det_layer, FlatHierarchy_ptr hierarchy, hash_ptr dag_info, hash_ptr defines, hash_ptr cdh )
void compile_write_bool_spec( FILE* out, BddEnc_ptr enc, node_ptr spec, const char* msg, SymbLayer_ptr det_layer, hash_ptr dag_info, hash_ptr defines, hash_ptr cdh )
int compile_write_constants( const SymbTable_ptr symb_table, FILE* out )
int compile_write_flat_array_define_udg( const SymbTable_ptr symb_table, FILE* out, const SymbLayer_ptr layer, const SymbTableType sym_mask, hash_ptr dag_info, hash_ptr defines )
int compile_write_flat_asgn( const SymbTable_ptr symb_table, FILE* out, const NodeList_ptr vars, FlatHierarchy_ptr hierarchy, hash_ptr dag_info, hash_ptr defines, hash_ptr cdh )
int compile_write_flat_define_aux( const SymbTable_ptr symb_table, FILE* out, node_ptr name, hash_ptr dag_info, hash_ptr defines, hash_ptr printed_arrays, boolean force_flattening )
int compile_write_flat_define( const SymbTable_ptr symb_table, FILE* out, const NodeList_ptr names, hash_ptr dag_info, hash_ptr defines, boolean force_flattening )
void compile_write_flat_fsm( FILE* out, const SymbTable_ptr symb_table, const array_t* layer_names, const char* fsm_name, FlatHierarchy_ptr hierarchy, hash_ptr dag_info, hash_ptr defines, boolean force_flattening, hash_ptr cdh )
void compile_write_flat_specs( FILE* out, const SymbTable_ptr st, FlatHierarchy_ptr hierarchy, hash_ptr dag_info, hash_ptr defines, boolean force_flattening, hash_ptr cdh )
void compile_write_flat_spec( FILE* out, const SymbTable_ptr symb_table, node_ptr spec, const char* msg, hash_ptr dag_info, hash_ptr defines, boolean force_flattening, hash_ptr cdh )
int compile_write_flatten_bfexpr( BddEnc_ptr enc, const SymbTable_ptr symb_table, SymbLayer_ptr det_layer, FILE* out, node_ptr n, const char* s, hash_ptr dag_info, hash_ptr defines, hash_ptr cdh )
int compile_write_flatten_bool_vars( const SymbTable_ptr symb_table, const BoolEnc_ptr bool_enc, FILE* out, const SymbLayer_ptr layer, const SymbTableType type )
int compile_write_flatten_expr_pair( const SymbTable_ptr symb_table, FILE* out, node_ptr l, const char* s, hash_ptr dag_info, hash_ptr defines, boolean force_flattening, hash_ptr cdh )
int compile_write_flatten_expr_split( const SymbTable_ptr symb_table, FILE* out, node_ptr n, const char* s, hash_ptr dag_info, hash_ptr defines, boolean force_flattening, hash_ptr cdh )
int compile_write_flatten_expr( const SymbTable_ptr symb_table, FILE* out, node_ptr n, const char* s, hash_ptr dag_info, hash_ptr defines, boolean force_flattening, hash_ptr cdh )
int compile_write_flatten_psl( const SymbTable_ptr symb_table, FILE* out, node_ptr n, hash_ptr dag_info, hash_ptr defines, hash_ptr cdh )
int compile_write_flatten_spec_split( const SymbTable_ptr symb_table, FILE* out, node_ptr n, const char* s, hash_ptr dag_info, hash_ptr defines, boolean force_flattening, hash_ptr cdh )
int compile_write_flatten_spec( const SymbTable_ptr symb_table, FILE* out, node_ptr n, const char* s, hash_ptr dag_info, hash_ptr defines, boolean force_flattening, hash_ptr cdh )
int compile_write_flatten_vars_aux( const SymbTable_ptr symb_table, const node_ptr name, FILE* out, hash_ptr printed )
int compile_write_flatten_vars( const SymbTable_ptr symb_table, FILE* out, const SymbLayer_ptr layer, SymbLayerIter* iter )
boolean compile_write_is_var_in_set( const SymbLayer_ptr layer, const node_ptr sym, void* arg )
int compile_write_obfuscated_constants( const SymbTable_ptr symb_table, FILE* out, hash_ptr obfuscation_map )
void compile_write_obfuscated_dag_defines( FILE* out, const SymbTable_ptr st, hash_ptr defines, hash_ptr obfuscation_map )
int compile_write_obfuscated_flat_asgn( const SymbTable_ptr symb_table, FILE* out, const SymbLayer_ptr layer, FlatHierarchy_ptr hierarchy, hash_ptr dag_info, hash_ptr defines, hash_ptr obfuscation_map, hash_ptr cdh )
int compile_write_obfuscated_flat_define_aux( const SymbTable_ptr symb_table, FILE* out, node_ptr name, hash_ptr dag_info, hash_ptr defines, hash_ptr printed_arrays, hash_ptr obfuscation_map, boolean force_flattening )
compile_write_flat_define_aux
int compile_write_obfuscated_flat_define( const SymbTable_ptr symb_table, FILE* out, const SymbLayer_ptr layer, hash_ptr dag_info, hash_ptr defines, hash_ptr obfuscation_map, boolean force_flattening )
void compile_write_obfuscated_flat_fsm( FILE* out, const SymbTable_ptr symb_table, const array_t* layer_names, const char* fsm_name, FlatHierarchy_ptr hierarchy, hash_ptr dag_info, hash_ptr defines, hash_ptr obfuscation_map, boolean force_flattening, hash_ptr cdh )
compile_write_flat_fsm
void compile_write_obfuscated_flat_specs( FILE* out, const SymbTable_ptr st, FlatHierarchy_ptr hierarchy, hash_ptr dag_info, hash_ptr defines, hash_ptr obfuscation_map, boolean force_flattening, hash_ptr cdh )
compile_write_flat_specs
void compile_write_obfuscated_flat_spec( FILE* out, const SymbTable_ptr symb_table, node_ptr spec, const char* msg, hash_ptr dag_info, hash_ptr defines, hash_ptr obfuscation_map, boolean force_flattening, hash_ptr cdh )
int compile_write_obfuscated_flatten_expr_pair( const SymbTable_ptr symb_table, FILE* out, node_ptr l, const char* s, hash_ptr dag_info, hash_ptr defines, hash_ptr obfuscation_map, boolean force_flattening, hash_ptr cdh )
int compile_write_obfuscated_flatten_expr_split( const SymbTable_ptr symb_table, FILE* out, node_ptr n, const char* s, hash_ptr dag_info, hash_ptr defines, hash_ptr obfuscation_map, boolean force_flattening, hash_ptr cdh )
int compile_write_obfuscated_flatten_expr( const SymbTable_ptr symb_table, FILE* out, node_ptr n, const char* s, hash_ptr dag_info, hash_ptr defines, hash_ptr obfuscation_map, boolean force_flattening, hash_ptr cdh )
int compile_write_obfuscated_flatten_spec_split( const SymbTable_ptr symb_table, FILE* out, node_ptr n, const char* s, hash_ptr dag_info, hash_ptr defines, hash_ptr obfuscation_map, boolean force_flattening, hash_ptr cdh )
int compile_write_obfuscated_flatten_spec( const SymbTable_ptr symb_table, FILE* out, node_ptr n, const char* s, hash_ptr dag_info, hash_ptr defines, hash_ptr obfuscation_map, boolean force_flattening, hash_ptr cdh )
boolean compile_write_obfuscated_flatten_vars_aux( const SymbTable_ptr symb_table, const node_ptr name, FILE* out, hash_ptr printed, hash_ptr obfuscation_map )
compile_write_flatten_vars_aux
int compile_write_obfuscated_flatten_vars( const SymbTable_ptr symb_table, FILE* out, const SymbLayer_ptr layer, const SymbTableType type, hash_ptr obfuscation_map )
void compile_write_restricted_flat_fsm( FILE* out, const SymbTable_ptr symb_table, const array_t* layer_names, const char* fsm_name, FlatHierarchy_ptr hierarchy, hash_ptr dag_info, hash_ptr defines, boolean force_flattening, hash_ptr cdh )
void compile_write_udg_bool_fsm( FILE* out, const SymbTable_ptr symb_table, NodeList_ptr layers, const char* fsm_name, BoolSexpFsm_ptr bool_sexp_fsm, hash_ptr dag_info, hash_ptr defines )
void compile_write_udg_bool_specs( FILE* out, BddEnc_ptr enc, SymbLayer_ptr det_layer, FlatHierarchy_ptr hierarchy, hash_ptr dag_info, hash_ptr defines )
void compile_write_udg_bool_spec( FILE* out, BddEnc_ptr enc, node_ptr spec, const char* msg, SymbLayer_ptr det_layer, hash_ptr dag_info, hash_ptr defines )
int compile_write_udg_constants( const SymbTable_ptr symb_table, FILE* out )
int compile_write_udg_flat_asgn( const SymbTable_ptr symb_table, FILE* out, const SymbLayer_ptr layer, const SymbTableType sym_mask, FlatHierarchy_ptr hierarchy, hash_ptr dag_info, hash_ptr defines )
int compile_write_udg_flat_define( const SymbTable_ptr symb_table, FILE* out, const SymbLayer_ptr layer, const SymbTableType sym_mask, hash_ptr dag_info, hash_ptr defines )
void compile_write_udg_flat_fsm( FILE* out, const SymbTable_ptr symb_table, const array_t* layer_names, const char* fsm_name, FlatHierarchy_ptr hierarchy, hash_ptr dag_info, hash_ptr defines )
void compile_write_udg_flat_specs( FILE* out, const SymbTable_ptr st, FlatHierarchy_ptr hierarchy, hash_ptr dag_info, hash_ptr defines )
node_ptr compile_write_udg_flatten_array_define( SymbTable_ptr st, node_ptr body, node_ptr context )
int compile_write_udg_flatten_bfexpr( BddEnc_ptr enc, const SymbTable_ptr symb_table, SymbLayer_ptr det_layer, FILE* out, node_ptr n, const char* s, hash_ptr dag_info, hash_ptr defines )
int compile_write_udg_flatten_bool_vars( const SymbTable_ptr symb_table, const BoolEnc_ptr bool_enc, FILE* out, const SymbLayer_ptr layer, const SymbTableType sym_mask )
int compile_write_udg_flatten_expr_pair( const SymbTable_ptr symb_table, FILE* out, node_ptr l, ModelSectionTag mst, hash_ptr dag_info, hash_ptr defines )
int compile_write_udg_flatten_expr_split( const SymbTable_ptr symb_table, FILE* out, node_ptr n, ModelSectionTag mst, hash_ptr dag_info, hash_ptr defines )
int compile_write_udg_flatten_expr( const SymbTable_ptr symb_table, FILE* out, node_ptr n, ModelSectionTag mst, hash_ptr dag_info, hash_ptr defines )
int compile_write_udg_flatten_psl( const SymbTable_ptr symb_table, FILE* out, node_ptr n, hash_ptr dag_info, hash_ptr defines )
int compile_write_udg_flatten_spec_split( const SymbTable_ptr symb_table, FILE* out, node_ptr n, ModelSectionTag mst, hash_ptr dag_info, hash_ptr defines )
int compile_write_udg_flatten_spec( const SymbTable_ptr symb_table, FILE* out, node_ptr n, ModelSectionTag mst, hash_ptr dag_info, hash_ptr defines )
int compile_write_udg_flatten_vars( const SymbTable_ptr symb_table, FILE* out, const SymbLayer_ptr layer, const SymbTableType var_type )
inline int compile_write_udg_print_1_ary( FILE* buffer, node_ptr code, const char* str, boolean close, boolean shared, const char* color1 )
inline int compile_write_udg_print_2_arya( FILE* buffer, node_ptr code, const char* str, boolean close, boolean shared )
inline int compile_write_udg_print_2_ary( FILE* buffer, node_ptr code, const char* str, boolean close, boolean shared, const char* color1, const char* color2 )
inline int compile_write_udg_print_3_aryc_color( FILE* buffer, node_ptr code, const char* str, node_ptr fst, node_ptr snd, node_ptr trd, boolean close, boolean shared, const char* color1, const char* color2, const char* color3 )
inline int compile_write_udg_print_3_aryc( FILE* buffer, node_ptr code, const char* str, node_ptr fst, node_ptr snd, node_ptr trd, boolean close, boolean shared )
int compile_write_udg_print_node( FILE* out, node_ptr n, boolean close, boolean shared, const char* style )