Data Structures |
| struct | expr_eval_routine |
Defines |
| #define | ROUND_SIZE(size, alignment) (((size) + ((alignment) - 1)) & ~((alignment) - 1)) |
| #define | ROUNDING(size, alignment) (((alignment) - 1) - (((size) + ((alignment) - 1)) & ((alignment) - 1))) |
| #define | WRITE_FCTYPE(file, fctype, typestring_offset) |
Enumerations |
| enum | type_context { TYPE_CONTEXT_TOPLEVELPARAM,
TYPE_CONTEXT_PARAM,
TYPE_CONTEXT_CONTAINER,
TYPE_CONTEXT_CONTAINER_NO_POINTERS
} |
Functions |
| static unsigned int | field_memsize (const type_t *type, unsigned int *offset) |
| static unsigned int | fields_memsize (const var_list_t *fields, unsigned int *align) |
| static unsigned int | type_memsize_and_alignment (const type_t *t, unsigned int *align) |
| static unsigned int | write_struct_tfs (FILE *file, type_t *type, const char *name, unsigned int *tfsoff) |
| static int | write_embedded_types (FILE *file, const attr_list_t *attrs, type_t *type, const char *name, int write_ptr, unsigned int *tfsoff) |
| static const var_t * | find_array_or_string_in_struct (const type_t *type) |
| static unsigned int | write_string_tfs (FILE *file, const attr_list_t *attrs, type_t *type, enum type_context context, const char *name, unsigned int *typestring_offset) |
| static unsigned int | get_required_buffer_size_type (const type_t *type, const char *name, const attr_list_t *attrs, int toplevel_param, unsigned int *alignment) |
| static unsigned int | get_function_buffer_size (const var_t *func, enum pass pass) |
| static const char * | string_of_type (unsigned char type) |
| static void * | get_aliaschain_attrp (const type_t *type, enum attr_type attr) |
| unsigned char | get_basic_fc (const type_t *type) |
| static unsigned char | get_basic_fc_signed (const type_t *type) |
| static unsigned int | clamp_align (unsigned int align) |
| unsigned char | get_pointer_fc (const type_t *type, const attr_list_t *attrs, int toplevel_param) |
| static unsigned char | get_pointer_fc_context (const type_t *type, const attr_list_t *attrs, enum type_context context) |
| static unsigned char | get_enum_fc (const type_t *type) |
| static type_t * | get_user_type (const type_t *t, const char **pname) |
| static int | is_user_type (const type_t *t) |
| enum typegen_type | typegen_detect_type (const type_t *type, const attr_list_t *attrs, unsigned int flags) |
| static int | cant_be_null (const var_t *v) |
| static int | get_padding (const var_list_t *fields) |
| static unsigned int | get_stack_size (const type_t *type, const attr_list_t *attrs, int *by_value) |
| static unsigned char | get_contexthandle_flags (const type_t *iface, const attr_list_t *attrs, const type_t *type) |
| static unsigned int | get_rpc_flags (const attr_list_t *attrs) |
| unsigned char | get_struct_fc (const type_t *type) |
| static unsigned char | get_array_fc (const type_t *type) |
| static int | is_non_complex_struct (const type_t *type) |
| static int | type_has_pointers (const type_t *type) |
| static int | type_has_full_pointer (const type_t *type, const attr_list_t *attrs, int toplevel_param) |
| static unsigned short | user_type_offset (const char *name) |
| static void | update_tfsoff (type_t *type, unsigned int offset, FILE *file) |
| static void | guard_rec (type_t *type) |
| static int | is_embedded_complex (const type_t *type) |
| static const char * | get_context_handle_type_name (const type_t *type) |
| static void | print_file (FILE *file, int indent, const char *format,...) __attribute__((format(printf |
| void | print (FILE *file, int indent, const char *format, va_list va) |
| static void | write_var_init (FILE *file, int indent, const type_t *t, const char *n, const char *local_var_prefix) |
| void | write_parameters_init (FILE *file, int indent, const var_t *func, const char *local_var_prefix) |
| static void | write_formatdesc (FILE *f, int indent, const char *str) |
| void | write_formatstringsdecl (FILE *f, int indent, const statement_list_t *stmts, type_pred_t pred) |
| int | decl_indirect (const type_t *t) |
| static unsigned char | get_parameter_fc (const type_t *type, const attr_list_t *attrs, int is_return, unsigned short *flags, unsigned int *stack_size, unsigned int *typestring_offset) |
| static unsigned char | get_func_oi2_flags (const var_t *func) |
| static unsigned int | write_new_procformatstring_type (FILE *file, int indent, const type_t *type, const attr_list_t *attrs, int is_return, unsigned int *stack_offset) |
| static unsigned int | write_old_procformatstring_type (FILE *file, int indent, const type_t *type, const attr_list_t *attrs, int is_return, int is_interpreted) |
| int | is_interpreted_func (const type_t *iface, const var_t *func) |
| static void | write_proc_func_header (FILE *file, int indent, const type_t *iface, const var_t *func, unsigned int *offset, unsigned short num_proc) |
| static void | write_procformatstring_func (FILE *file, int indent, const type_t *iface, const var_t *func, unsigned int *offset, unsigned short num_proc) |
| static void | write_procformatstring_stmts (FILE *file, int indent, const statement_list_t *stmts, type_pred_t pred, unsigned int *offset) |
| void | write_procformatstring (FILE *file, const statement_list_t *stmts, type_pred_t pred) |
| void | write_procformatstring_offsets (FILE *file, const type_t *iface) |
| static int | write_base_type (FILE *file, const type_t *type, unsigned int *typestring_offset) |
| static unsigned int | write_conf_or_var_desc (FILE *file, const type_t *cont_type, unsigned int baseoff, const type_t *type, const expr_t *expr) |
| static unsigned int | union_memsize (const var_list_t *fields, unsigned int *pmaxa) |
| unsigned int | type_memsize (const type_t *t) |
| static unsigned int | type_buffer_alignment (const type_t *t) |
| int | is_full_pointer_function (const var_t *func) |
| void | write_full_pointer_init (FILE *file, int indent, const var_t *func, int is_server) |
| void | write_full_pointer_free (FILE *file, int indent, const var_t *func) |
| static unsigned int | write_nonsimple_pointer (FILE *file, const attr_list_t *attrs, const type_t *type, enum type_context context, unsigned int offset, unsigned int *typeformat_offset) |
| static unsigned int | write_simple_pointer (FILE *file, const attr_list_t *attrs, const type_t *type, enum type_context context) |
| static void | print_start_tfs_comment (FILE *file, type_t *t, unsigned int tfsoff) |
| static unsigned int | write_pointer_tfs (FILE *file, const attr_list_t *attrs, type_t *type, unsigned int ref_offset, enum type_context context, unsigned int *typestring_offset) |
| static int | processed (const type_t *type) |
| static int | user_type_has_variable_size (const type_t *t) |
| static unsigned int | write_user_tfs (FILE *file, type_t *type, unsigned int *tfsoff) |
| static void | write_member_type (FILE *file, const type_t *cont, int cont_is_complex, const attr_list_t *attrs, const type_t *type, unsigned int *corroff, unsigned int *tfsoff) |
| static void | write_array_element_type (FILE *file, const type_t *type, int cont_is_complex, unsigned int *tfsoff) |
| static void | write_end (FILE *file, unsigned int *tfsoff) |
| static void | write_descriptors (FILE *file, type_t *type, unsigned int *tfsoff) |
| static int | write_pointer_description_offsets (FILE *file, const attr_list_t *attrs, type_t *type, unsigned int *offset_in_memory, unsigned int *offset_in_buffer, unsigned int *typestring_offset) |
| static int | write_no_repeat_pointer_descriptions (FILE *file, const attr_list_t *attrs, type_t *type, unsigned int *offset_in_memory, unsigned int *offset_in_buffer, unsigned int *typestring_offset) |
| static int | write_fixed_array_pointer_descriptions (FILE *file, const attr_list_t *attrs, type_t *type, unsigned int *offset_in_memory, unsigned int *offset_in_buffer, unsigned int *typestring_offset) |
| static int | write_conformant_array_pointer_descriptions (FILE *file, const attr_list_t *attrs, type_t *type, unsigned int offset_in_memory, unsigned int *typestring_offset) |
| static int | write_varying_array_pointer_descriptions (FILE *file, const attr_list_t *attrs, type_t *type, unsigned int *offset_in_memory, unsigned int *offset_in_buffer, unsigned int *typestring_offset) |
| static void | write_pointer_description (FILE *file, type_t *type, unsigned int *typestring_offset) |
| int | is_declptr (const type_t *t) |
| static unsigned int | write_array_tfs (FILE *file, const attr_list_t *attrs, type_t *type, const char *name, unsigned int *typestring_offset) |
| static void | write_struct_members (FILE *file, const type_t *type, int is_complex, unsigned int *corroff, unsigned int *typestring_offset) |
| static void | write_branch_type (FILE *file, const type_t *t, unsigned int *tfsoff) |
| static unsigned int | write_union_tfs (FILE *file, const attr_list_t *attrs, type_t *type, unsigned int *tfsoff) |
| static unsigned int | write_ip_tfs (FILE *file, const attr_list_t *attrs, type_t *type, unsigned int *typeformat_offset) |
| static unsigned int | write_contexthandle_tfs (FILE *file, const attr_list_t *attrs, type_t *type, int toplevel_param, unsigned int *typeformat_offset) |
| static unsigned int | write_range_tfs (FILE *file, const attr_list_t *attrs, type_t *type, expr_list_t *range_list, unsigned int *typeformat_offset) |
| static unsigned int | write_type_tfs (FILE *file, int indent, const attr_list_t *attrs, type_t *type, const char *name, enum type_context context, unsigned int *typeformat_offset) |
| static unsigned int | process_tfs_stmts (FILE *file, const statement_list_t *stmts, type_pred_t pred, unsigned int *typeformat_offset) |
| static unsigned int | process_tfs (FILE *file, const statement_list_t *stmts, type_pred_t pred) |
| void | write_typeformatstring (FILE *file, const statement_list_t *stmts, type_pred_t pred) |
| static unsigned int | get_required_buffer_size (const var_t *var, unsigned int *alignment, enum pass pass) |
| static unsigned int | get_function_buffer_size (const var_t *func, enum pass pass) |
| static void | print_phase_function (FILE *file, int indent, const char *type, const char *local_var_prefix, enum remoting_phase phase, const var_t *var, unsigned int type_offset) |
| void | print_phase_basetype (FILE *file, int indent, const char *local_var_prefix, enum remoting_phase phase, enum pass pass, const var_t *var, const char *varname) |
| static int | is_conformance_needed_for_phase (enum remoting_phase phase) |
| expr_t * | get_size_is_expr (const type_t *t, const char *name) |
| void | write_parameter_conf_or_var_exprs (FILE *file, int indent, const char *local_var_prefix, enum remoting_phase phase, const var_t *var, int valid_variance) |
| static void | write_remoting_arg (FILE *file, int indent, const var_t *func, const char *local_var_prefix, enum pass pass, enum remoting_phase phase, const var_t *var) |
| void | write_remoting_arguments (FILE *file, int indent, const var_t *func, const char *local_var_prefix, enum pass pass, enum remoting_phase phase) |
| unsigned int | get_size_procformatstring_func (const type_t *iface, const var_t *func) |
| unsigned int | get_size_procformatstring (const statement_list_t *stmts, type_pred_t pred) |
| unsigned int | get_size_typeformatstring (const statement_list_t *stmts, type_pred_t pred) |
| void | declare_stub_args (FILE *file, int indent, const var_t *func) |
| void | assign_stub_out_args (FILE *file, int indent, const var_t *func, const char *local_var_prefix) |
| void | write_func_param_struct (FILE *file, const type_t *iface, const type_t *func, const char *var_decl, int add_retval) |
| void | write_pointer_checks (FILE *file, int indent, const var_t *func) |
| int | write_expr_eval_routines (FILE *file, const char *iface) |
| void | write_expr_eval_routine_list (FILE *file, const char *iface) |
| void | write_user_quad_list (FILE *file) |
| void | write_endpoints (FILE *f, const char *prefix, const str_list_t *list) |
| void | write_client_call_routine (FILE *file, const type_t *iface, const var_t *func, const char *prefix, unsigned int proc_offset) |
| void | write_exceptions (FILE *file) |
Variables |
| static const type_t * | current_structure |
| static const var_t * | current_func |
| static const type_t * | current_iface |
| static struct list | expr_eval_routines = LIST_INIT(expr_eval_routines) |
| static const unsigned short | MustSize = 0x0001 |
| static const unsigned short | MustFree = 0x0002 |
| static const unsigned short | IsPipe = 0x0004 |
| static const unsigned short | IsIn = 0x0008 |
| static const unsigned short | IsOut = 0x0010 |
| static const unsigned short | IsReturn = 0x0020 |
| static const unsigned short | IsBasetype = 0x0040 |
| static const unsigned short | IsByValue = 0x0080 |
| static const unsigned short | IsSimpleRef = 0x0100 |