Page Menu
Home
Phabricator
Search
Configure Global Search
Log In
Files
F27269937
var_dump.py
No One
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Authored By
•
mmodell
Nov 21 2018, 6:23 PM
2018-11-21 18:23:55 (UTC+0)
Size
1 KB
Referenced Files
None
Subscribers
None
var_dump.py
View Options
import
json
import
pygments
import
pygments.lexers
import
pygments.formatters
from
json
import
JSONEncoder
class
VarDumpJSONEncoder
(
JSONEncoder
):
''' encode python objects to json '''
def
default
(
self
,
o
):
if
hasattr
(
o
,
'__dump__'
):
return
o
.
__dump__
()
if
hasattr
(
o
,
'__dict__'
):
return
o
.
__dict__
try
:
return
JSONEncoder
.
default
(
self
,
o
)
except
(
TypeError
,
ValueError
):
return
"Unserializable"
def
var_dump
(
*
args
,
**
kwargs
):
''' dump an object to the console as pretty-printed json'''
lexer
=
pygments
.
lexers
.
JsonLexer
()
formatter
=
pygments
.
formatters
.
TerminalFormatter
()
encoder
=
VarDumpJSONEncoder
(
indent
=
2
)
def
dump
(
obj
):
try
:
json_str
=
encoder
.
encode
(
obj
)
output
=
pygments
.
highlight
(
json_str
,
lexer
,
formatter
)
print
(
output
)
except
Exception
as
e
:
print
(
e
)
print
(
obj
)
for
arg
in
args
:
dump
(
arg
)
if
kwargs
:
dump
(
kwargs
.
items
())
File Metadata
Details
Attached
Mime Type
text/plain; charset=utf-8
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
6717585
Default Alt Text
var_dump.py (1 KB)
Attached To
Mode
P7836 var_dump.py
Attached
Detach File
Event Timeline
Log In to Comment