mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
Refactor exception dumping
This commit is contained in:
parent
4bd1909427
commit
f770a5be66
1 changed files with 17 additions and 28 deletions
|
@ -181,37 +181,11 @@ module Psych
|
||||||
end
|
end
|
||||||
|
|
||||||
def visit_Exception o
|
def visit_Exception o
|
||||||
tag = ['!ruby/exception', o.class.name].join ':'
|
dump_exception o, private_iv_get(o, 'mesg')
|
||||||
|
|
||||||
@emitter.start_mapping nil, tag, false, Nodes::Mapping::BLOCK
|
|
||||||
|
|
||||||
msg = private_iv_get(o, 'mesg')
|
|
||||||
|
|
||||||
if msg
|
|
||||||
@emitter.scalar 'message', nil, nil, true, false, Nodes::Scalar::ANY
|
|
||||||
accept msg
|
|
||||||
end
|
|
||||||
|
|
||||||
dump_ivars o
|
|
||||||
|
|
||||||
@emitter.end_mapping
|
|
||||||
end
|
end
|
||||||
|
|
||||||
def visit_NameError o
|
def visit_NameError o
|
||||||
tag = ['!ruby/exception', o.class.name].join ':'
|
dump_exception o, o.message.to_s
|
||||||
|
|
||||||
@emitter.start_mapping nil, tag, false, Nodes::Mapping::BLOCK
|
|
||||||
|
|
||||||
msg = o.message.to_s
|
|
||||||
|
|
||||||
if msg
|
|
||||||
@emitter.scalar 'message', nil, nil, true, false, Nodes::Scalar::ANY
|
|
||||||
accept msg
|
|
||||||
end
|
|
||||||
|
|
||||||
dump_ivars o
|
|
||||||
|
|
||||||
@emitter.end_mapping
|
|
||||||
end
|
end
|
||||||
|
|
||||||
def visit_Regexp o
|
def visit_Regexp o
|
||||||
|
@ -488,6 +462,21 @@ module Psych
|
||||||
def dump_list o
|
def dump_list o
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def dump_exception o, msg
|
||||||
|
tag = ['!ruby/exception', o.class.name].join ':'
|
||||||
|
|
||||||
|
@emitter.start_mapping nil, tag, false, Nodes::Mapping::BLOCK
|
||||||
|
|
||||||
|
if msg
|
||||||
|
@emitter.scalar 'message', nil, nil, true, false, Nodes::Scalar::ANY
|
||||||
|
accept msg
|
||||||
|
end
|
||||||
|
|
||||||
|
dump_ivars o
|
||||||
|
|
||||||
|
@emitter.end_mapping
|
||||||
|
end
|
||||||
|
|
||||||
def format_time time
|
def format_time time
|
||||||
if time.utc?
|
if time.utc?
|
||||||
time.strftime("%Y-%m-%d %H:%M:%S.%9N Z")
|
time.strftime("%Y-%m-%d %H:%M:%S.%9N Z")
|
||||||
|
|
Loading…
Reference in a new issue