Sha256: 55301423d57e1f7a6406705363ed7666ed3dc1448aad1dff66a913aba8dd1584
Contents?: true
Size: 1.84 KB
Versions: 1
Compression:
Stored size: 1.84 KB
Contents
#ifndef _INC_ROTOSCOPE_H_ #define _INC_ROTOSCOPE_H_ #include <unistd.h> #include "stack.h" #include "strmemo.h" #define EVENT_CALL (RUBY_EVENT_CALL | RUBY_EVENT_C_CALL) #define EVENT_RETURN (RUBY_EVENT_RETURN | RUBY_EVENT_C_RETURN) #define CLASS_METHOD "class" #define INSTANCE_METHOD "instance" #define STACK_CAPACITY 500 #define LOG_BUFFER_SIZE 1000 // clang-format off #define RS_CSV_HEADER "event,entity,filepath,lineno,method_name,method_level" #define RS_CSV_FORMAT "%s,\"%s\",\"%s\",%d,\"%s\",%s" #define RS_CSV_VALUES(trace, method_name) \ trace->event, \ StringValueCStr((trace)->entity), \ StringValueCStr((trace)->filepath), \ (trace)->lineno, \ StringValueCStr(method_name), \ (trace)->method_level #define RS_FLATTENED_CSV_HEADER \ "entity,caller_entity,filepath,lineno,method_name,method_level,caller_method_name,caller_method_level" #define RS_FLATTENED_CSV_FORMAT "\"%s\",\"%s\",\"%s\",%d,\"%s\",%s,\"%s\",%s" #define RS_FLATTENED_CSV_VALUES(trace, caller_trace, method_name, caller_method_name) \ StringValueCStr((trace)->entity), \ StringValueCStr((caller_trace)->entity), \ StringValueCStr((trace)->filepath), \ (trace)->lineno, \ StringValueCStr(method_name), \ (trace)->method_level, \ StringValueCStr(caller_method_name), \ (caller_trace)->method_level // clang-format on typedef enum { RS_CLOSED = 0, RS_OPEN, RS_TRACING, } rs_state; typedef struct { FILE *log; VALUE log_path; VALUE tracepoint; const char **blacklist; unsigned long blacklist_size; bool flatten_output; pid_t pid; unsigned long tid; rs_state state; rs_stack_t stack; rs_strmemo_t *call_memo; } Rotoscope; typedef struct { VALUE name; const char *method_level; } rs_class_desc_t; #endif
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
rotoscope-0.3.0.pre.6 | ext/rotoscope/rotoscope.h |