ext/ruby_prof/rp_method.h in ruby-prof-1.1.0 vs ext/ruby_prof/rp_method.h in ruby-prof-1.2.0

- old
+ new

@@ -16,55 +16,48 @@ kModuleSingleton = 0x4, /* Singleton of a module */ kObjectSingleton = 0x8, /* Singleton of an object */ kOtherSingleton = 0x10 /* Singleton of unkown object */ }; -/* Forward declaration, see rp_call_info.h */ -struct prof_call_infos_t; - /* Profiling information for each method. */ -/* Excluded methods have no call_infos, source_klass, or source_file. */ +/* Excluded methods have no call_trees, source_klass, or source_file. */ typedef struct { st_data_t key; /* Table key */ int visits; /* Current visits on the stack */ - bool excluded; /* Exclude from profile? */ - st_table* parent_call_infos; /* Call infos that call this method */ - st_table* child_call_infos; /* Call infos that this method calls */ + struct prof_call_trees_t* call_trees; /* Call infos that call this method */ st_table* allocations_table; /* Tracks object allocations */ unsigned int klass_flags; /* Information about the type of class */ VALUE klass; /* Resolved klass */ VALUE klass_name; /* Resolved klass name for this method */ VALUE method_name; /* Resolved method name for this method */ VALUE object; /* Cached ruby object */ - bool root; /* Is this a root method */ bool recursive; VALUE source_file; /* Source file */ int source_line; /* Line number */ - prof_measurement_t *measurement; + prof_measurement_t* measurement; } prof_method_t; void rp_init_method_info(void); st_data_t method_key(VALUE klass, VALUE msym); -st_table *method_table_create(void); -prof_method_t* prof_method_create_excluded(VALUE klass, VALUE msym); -prof_method_t *method_table_lookup(st_table *table, st_data_t key); -size_t method_table_insert(st_table *table, st_data_t key, prof_method_t *val); -void method_table_free(st_table *table); -prof_method_t *prof_method_create(VALUE klass, VALUE msym, VALUE source_file, int source_line); -prof_method_t *prof_method_get(VALUE self); +st_table* method_table_create(void); +prof_method_t* method_table_lookup(st_table* table, st_data_t key); +size_t method_table_insert(st_table* table, st_data_t key, prof_method_t* val); +void method_table_free(st_table* table); +prof_method_t* prof_method_create(VALUE klass, VALUE msym, VALUE source_file, int source_line); +prof_method_t* prof_get_method(VALUE self); -VALUE prof_method_wrap(prof_method_t *result); -void prof_method_mark(void *data); +VALUE prof_method_wrap(prof_method_t* result); +void prof_method_mark(void* data); -VALUE resolve_klass(VALUE klass, unsigned int *klass_flags); +VALUE resolve_klass(VALUE klass, unsigned int* klass_flags); VALUE resolve_klass_name(VALUE klass, unsigned int* klass_flags); #endif //__RP_METHOD_INFO__