Skip to content

Conversation

@nisedo
Copy link
Contributor

@nisedo nisedo commented Aug 23, 2025

This commit introduces a new printer, "entry-points-vars", which extends the functionality of the existing "entry-points" printer by adding comprehensive storage variable information alongside function entry points.

Command: slither . --print entry-points-vars

Features:

  • Displays full contract inheritance chain in headers
  • Shows storage variables with types, storage slots, and inheritance info
  • Includes constructors, receive, and fallback functions
  • Visual distinction for special (constructors, receive, and fallback) functions (purple color)

This new printer provides a complete view of contract storage layout and entry points, making it valuable for security analysis and contract understanding.

Files modified:

  • slither/printers/summary/entry_points_vars.py: New printer implementation
  • slither/printers/all_printers.py: Register new printer
  • README.md: Add printer to documentation
  • docs/src/printers/Printer-documentation.md: Update printer list

Current entry-points printer:

Screenshot 2025-08-23 at 12 53 46

New entry-points-vars printer:

Screenshot 2025-08-23 at 12 54 01

This commit introduces a new printer 'entry-points-vars' that extends the
functionality of the existing 'entry-points' printer by adding comprehensive
variable information alongside function entry points.

Features:
- Displays full contract inheritance chain in headers
- Shows state variables with types, storage slots, and inheritance info
- Includes constructors, receive, and fallback functions
- Visual distinction for special functions (purple color)
- Enhanced spacing and plural table headers for better readability

The printer provides a complete view of contract storage layout and entry
points, making it valuable for security analysis and contract understanding.

Files modified:
- slither/printers/summary/entry_points_vars.py: New printer implementation
- slither/printers/all_printers.py: Register new printer
- README.md: Add printer to documentation
- docs/src/printers/Printer-documentation.md: Update printer list

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
@nisedo nisedo self-assigned this Aug 23, 2025
@nisedo nisedo closed this Aug 24, 2025
@nisedo nisedo deleted the entry-points-vars-printer branch August 24, 2025 11:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants