Skip to content

Instantly share code, notes, and snippets.

@moritz
Created November 17, 2012 14:50
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save moritz/4096527 to your computer and use it in GitHub Desktop.
Save moritz/4096527 to your computer and use it in GitHub Desktop.
QAST Dumper
my $x := 3;
if 'a' eq 'a' {
say($x);
}
- QAST::CompUnit
- QAST::Block
- QAST::Var(lexical @ARGS)
- QAST::Stmts
- QAST::Var(lexical GLOBALish)
- QAST::Var(lexical $?PACKAGE)
- QAST::Var(lexical EXPORT)
- QAST::Op(bind ) $x
- QAST::Var(lexical $x)
- QAST::WVal
- QAST::Stmts
- QAST::Op(bind )
- QAST::Var(local ctxsave)
- QAST::Var(contextual $*CTXSAVE)
- QAST::Op(unless )
- QAST::Op(isnull )
- QAST::Var(local ctxsave)
- QAST::Op(if )
- QAST::VM
- QAST::Var(local ctxsave)
- QAST::SVal(ctxsave)
- QAST::Op(callmethod ctxsave)
- QAST::Var(local ctxsave)
- QAST::Stmts my $x := 3;\nif 'a' eq 'a' {\n say($x);\n}\n
- QAST::Stmts
- QAST::Op(bind &infix:<:=>) :=
- QAST::Var(lexical $x)
- QAST::IVal(3)
- QAST::Stmts
- QAST::Op(if ) 'a' eq 'a' {\n say($x);\n}
- QAST::Op(iseq_s &infix:<eq>) eq
- QAST::SVal(a)
- QAST::SVal(a)
- QAST::Stmts {\n say($x);\n}
- QAST::Stmts
- QAST::Stmts \n say($x);\n
- QAST::Stmts
- QAST::Op(call &say) $x
- QAST::Var(lexical $x)
- QAST::Op(if )
- QAST::Var(lexical @ARGS)
- QAST::Stmts
- QAST::VM
- QAST::SVal(ModuleLoader.pbc)
- QAST::Op(callmethod set_mainline_module)
- QAST::VM
- QAST::SVal(ModuleLoader)
- QAST::Op(atkey )
- QAST::VM
- QAST::SVal(context)
- QAST::VM
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment