static void add_num(ParseInfo pi, NumInfo ni) { if (ni->infinity || ni->nan) { oj_set_error_at(pi, oj_parse_error_class, __FILE__, __LINE__, "not a number or other value"); } pi->stack.head->val = oj_num_as_value(ni); }
static void array_append_num(ParseInfo pi, NumInfo ni) { if (ni->infinity || ni->nan) { oj_set_error_at(pi, oj_parse_error_class, __FILE__, __LINE__, "not a number or other value"); } rb_ary_push(stack_peek(&pi->stack)->val, oj_num_as_value(ni)); }
static void hash_set_num(struct _ParseInfo *pi, Val parent, NumInfo ni) { if (ni->infinity || ni->nan) { oj_set_error_at(pi, oj_parse_error_class, __FILE__, __LINE__, "not a number or other value"); } rb_hash_aset(stack_peek(&pi->stack)->val, calc_hash_key(pi, parent), oj_num_as_value(ni)); }
static void add_num(ParseInfo pi, NumInfo ni) { if (ni->infinity || ni->nan) { oj_set_error_at(pi, oj_parse_error_class, __FILE__, __LINE__, "not a number or other value"); } pi->stack.head->val = oj_num_as_value(ni); if (Yes == pi->options.trace) { oj_trace_parse_call("add_number", pi, __FILE__, __LINE__, pi->stack.head->val); } }
static void array_append_num(ParseInfo pi, NumInfo ni) { volatile VALUE v; if (ni->infinity || ni->nan) { oj_set_error_at(pi, oj_parse_error_class, __FILE__, __LINE__, "not a number or other value"); } v = oj_num_as_value(ni); rb_ary_push(stack_peek(&pi->stack)->val, v); if (Yes == pi->options.trace) { oj_trace_parse_call("append_number", pi, __FILE__, __LINE__, v); } }
static void hash_set_num(struct _ParseInfo *pi, Val parent, NumInfo ni) { volatile VALUE v; if (ni->infinity || ni->nan) { oj_set_error_at(pi, oj_parse_error_class, __FILE__, __LINE__, "not a number or other value"); } v = oj_num_as_value(ni); rb_hash_aset(stack_peek(&pi->stack)->val, calc_hash_key(pi, parent), v); if (Yes == pi->options.trace) { oj_trace_parse_call("set_number", pi, __FILE__, __LINE__, v); } }