We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent b733404 commit aa8a615Copy full SHA for aa8a615
src/QAST/Block.nqp
@@ -40,15 +40,22 @@ class QAST::Block is QAST::Node {
40
}
41
42
43
+ my %NOSYMS := nqp::hash();
44
method symbol($name, *%attrs) {
45
%!symbol := nqp::hash() if nqp::isnull(%!symbol);
46
if %attrs {
- %!symbol{$name} := %!symbol{$name} // {};
47
+ my %syms := %!symbol{$name};
48
+ unless nqp::ishash(%syms) {
49
+ %!symbol{$name} := %syms := nqp::hash();
50
+ }
51
for %attrs {
- %!symbol{$name}{$_.key} := $_.value;
52
+ %syms{$_.key} := $_.value;
53
54
+ %syms
55
56
+ else {
57
+ nqp::ifnull(nqp::atkey(%!symbol, $name), %NOSYMS)
58
- %!symbol{$name}
59
60
61
method symtable() {
0 commit comments