Avatar for the paradigmxyz user
paradigmxyz
solar
BlogDocsChangelog

feat: Implement HIR pretty printer

#275Closed
Comparing
swarna1101:feat/hir-pretty-printer
(
d755dcd
) with
main
(
3062e90
)
CodSpeed Performance Gauge
0%
Untouched
24
Ignored
3

Benchmarks

Passed

Counter/lex
benches/benches/criterion.rs::benches::parser_benches::parser::Counter/lex
CodSpeed Performance Gauge
+1%
10.6 µs10.6 µs
Solady/parse
benches/benches/criterion.rs::benches::parser_benches::parser::Solady/parse
CodSpeed Performance Gauge
0%
46.4 ms46.3 ms
session/new
benches/benches/criterion.rs::benches::micro_benches::micro::session/new
CodSpeed Performance Gauge
0%
134.3 µs134.2 µs
verifier/parse
benches/benches/criterion.rs::benches::parser_benches::parser::verifier/parse
CodSpeed Performance Gauge
0%
627.7 µs627.4 µs
Optimism/lex
benches/benches/criterion.rs::benches::parser_benches::parser::Optimism/lex
CodSpeed Performance Gauge
0%
78.5 ms78.5 ms
source_map/new_source_file
benches/benches/criterion.rs::benches::micro_benches::micro::source_map/new_source_file
CodSpeed Performance Gauge
0%
9.4 ms9.4 ms
Seaport/lex
benches/benches/criterion.rs::benches::parser_benches::parser::Seaport/lex
CodSpeed Performance Gauge
0%
6.5 ms6.5 ms
Solarray/lex
benches/benches/criterion.rs::benches::parser_benches::parser::Solarray/lex
CodSpeed Performance Gauge
0%
1.2 ms1.2 ms
Seaport/parse
benches/benches/criterion.rs::benches::parser_benches::parser::Seaport/parse
CodSpeed Performance Gauge
0%
13.6 ms13.6 ms
verifier/lex
benches/benches/criterion.rs::benches::parser_benches::parser::verifier/lex
CodSpeed Performance Gauge
0%
213.5 µs213.5 µs
Solarray/parse
benches/benches/criterion.rs::benches::parser_benches::parser::Solarray/parse
CodSpeed Performance Gauge
0%
3.8 ms3.8 ms
console/lex
benches/benches/criterion.rs::benches::parser_benches::parser::console/lex
CodSpeed Performance Gauge
0%
1.6 ms1.6 ms
safeconsole/parse
benches/benches/criterion.rs::benches::parser_benches::parser::safeconsole/parse
CodSpeed Performance Gauge
0%
24.9 ms24.9 ms
safeconsole/lex
benches/benches/criterion.rs::benches::parser_benches::parser::safeconsole/lex
CodSpeed Performance Gauge
0%
9.1 ms9.1 ms
Vm/parse
benches/benches/criterion.rs::benches::parser_benches::parser::Vm/parse
CodSpeed Performance Gauge
0%
2.4 ms2.4 ms
UniswapV3/parse
benches/benches/criterion.rs::benches::parser_benches::parser::UniswapV3/parse
CodSpeed Performance Gauge
0%
4 ms4 ms
Solady/lex
benches/benches/criterion.rs::benches::parser_benches::parser::Solady/lex
CodSpeed Performance Gauge
0%
20.1 ms20.1 ms
UniswapV3/lex
benches/benches/criterion.rs::benches::parser_benches::parser::UniswapV3/lex
CodSpeed Performance Gauge
0%
1.7 ms1.7 ms
Vm/lex
benches/benches/criterion.rs::benches::parser_benches::parser::Vm/lex
CodSpeed Performance Gauge
0%
1.1 ms1.1 ms
Optimism/parse
benches/benches/criterion.rs::benches::parser_benches::parser::Optimism/parse
CodSpeed Performance Gauge
0%
197.5 ms197.9 ms
OptimizorClub/parse
benches/benches/criterion.rs::benches::parser_benches::parser::OptimizorClub/parse
CodSpeed Performance Gauge
0%
1.6 ms1.6 ms
OptimizorClub/lex
benches/benches/criterion.rs::benches::parser_benches::parser::OptimizorClub/lex
CodSpeed Performance Gauge
0%
645.1 µs646.2 µs
console/parse
benches/benches/criterion.rs::benches::parser_benches::parser::console/parse
CodSpeed Performance Gauge
0%
4.5 ms4.5 ms
Counter/parse
benches/benches/criterion.rs::benches::parser_benches::parser::Counter/parse
CodSpeed Performance Gauge
-1%
44.7 µs45.3 µs

Ignored

session/enter
benches/benches/criterion.rs::benches::micro_benches::micro::session/enter
Ignored
CodSpeed Performance Gauge
0%
64.1 µs64.1 µs
empty/lex
benches/benches/criterion.rs::benches::parser_benches::parser::empty/lex
Ignored
CodSpeed Performance Gauge
-2%
1.4 µs1.5 µs
empty/parse
benches/benches/criterion.rs::benches::parser_benches::parser::empty/parse
Ignored
CodSpeed Performance Gauge
-1%
7.8 µs7.8 µs

Commits

Click on a commit to change the comparison range
Base
main
3062e90
-0.02%
feat: Implement HIR pretty printer Implementation Details: - Added HirPrettyPrinter struct for formatting HIR nodes - Implemented Display traits for Expr and Type - Added pretty printing methods for contracts, functions, variables, and statements - Fixed error handling in test file to properly convert between error types - Added proper error handling for SourceFile creation Testing: - Added test_pretty_print test to verify pretty printer functionality - Fixed warnings in pretty.rs by prefixing unused variables with underscore - Added #[allow(dead_code)] to unused methods - Added #[allow(unused_crate_dependencies)] to test file Future Work: - Implement parsing and lowering functionality in test - Complete TODO items in pretty printer for parameter and return type printing - Add more comprehensive tests for different HIR node types - Improve error handling and diagnostics
d0fa377
5 months ago
by swarna1101
-0.24%
feat: remove placeholder TODOs
f8e5d0a
3 months ago
by swarna1101
+0.25%
fix: formatting issues
aafeff6
3 months ago
by swarna1101
-0.06%
Merge branch 'main' into feat/hir-pretty-printer
d755dcd
2 months ago
by swarna1101
© 2025 CodSpeed Technology
Home Terms Privacy Docs