Skip to content

Commit

Permalink
Add listing globals by wat inspector
Browse files Browse the repository at this point in the history
  • Loading branch information
igrek51 committed Feb 18, 2024
1 parent 86ecd79 commit f6d4954
Show file tree
Hide file tree
Showing 3 changed files with 30 additions and 3 deletions.
10 changes: 9 additions & 1 deletion docs/inspect.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ you don't even need to install **nuclear** package to use `wat` inspector.
Load it on the fly by pasting this snippet to your Python interpreter:
```python
import base64, zlib
code = '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'
code = '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'
exec(zlib.decompress(base64.b64decode(code.encode())).decode(), globals())
```

Expand Down Expand Up @@ -74,6 +74,14 @@ type: set
len: 1
```

```python
>>> wat.short / user
str: admin
repr: <User: admin>
type: django.contrib.auth.models.User
parents: django.contrib.auth.models.AbstractUser, django.contrib.auth.base_user.AbstractBaseUser, django.contrib.auth.models.PermissionsMixin, django.db.models.base.Model, django.db.models.utils.AltersData
```

### Look up methods
Listing methods, functions and looking up their signature is extremely beneficial to see how to use them.
Plus, you can read their docstrings.
Expand Down
21 changes: 20 additions & 1 deletion nuclear/inspection/inspection.py
Original file line number Diff line number Diff line change
Expand Up @@ -376,7 +376,7 @@ def __rshift__(self, other: Any): return self._react_with(other) # >>
def __or__(self, other: Any): return self._react_with(other) # |
def __lt__(self, other: Any): return self._react_with(other) # <

def __getattr__(self, name) -> 'Wat':
def __getattr__(self, name) -> Union['Wat', None]:
new_wat = Wat(**self._params)
if name in {'short', 's'}:
new_wat._params['short'] = True
Expand All @@ -390,6 +390,10 @@ def __getattr__(self, name) -> 'Wat':
new_wat._params['nodocs'] = True
elif name == 'all':
new_wat._params['all'] = True
elif name == 'locals':
return inspect(_build_locals_object())
elif name == 'globals':
return inspect(_build_globals_object())
else:
raise AttributeError
return new_wat
Expand All @@ -416,6 +420,21 @@ def _build_locals_object():
return o


def _build_globals_object():
o = type('globals', (object,), {})()
frame = std_inspect.currentframe()
try:
for _ in range(2):
if frame is not None:
frame = frame.f_back
if frame is not None:
for key, value in frame.f_globals.items():
setattr(o, key, value)
finally:
del frame
return o


RESET ='\033[0m'
STYLE_BRIGHT = '\033[1m'
STYLE_DIM = '\033[2m'
Expand Down
Loading

0 comments on commit f6d4954

Please sign in to comment.