PN_S               37 core/ast.h           if (PN_PART(endname) == AST_EXPR) endname = PN_TUPLE_AT(PN_S(endname, 0), 0); \
PN_S               39 core/ast.h             endname = PN_S(endname, 0); \
PN_S              185 core/compile.c   if (PN_PART(t->a[n]) == AST_LIST && PN_PART(PN_TUPLE_AT(PN_S(t->a[n],0), 0)) == AST_EXPR) { \
PN_S              186 core/compile.c     PN test = PN_S(PN_TUPLE_AT(PN_S(t->a[n],0), 0), 0);			\
PN_S              197 core/compile.c   if (PN_PART(t->a[n]) == AST_EXPR && PN_PART(PN_TUPLE_AT(PN_S(t->a[n],0), 0)) == AST_LIST) { \
PN_S              198 core/compile.c     PN test = PN_S(PN_TUPLE_AT(PN_S(t->a[n],0), 0), 0);			\
PN_S              251 core/compile.c #define SRC_TUPLE_AT(src,i)  PN_SRC((PN_TUPLE_AT(PN_S(src,0), i)))
PN_S              282 core/compile.c       args = PN_S(args,0);
PN_S              290 core/compile.c               vPN(Source) lhs = PN_SRC(PN_S(v,0));
PN_S              292 core/compile.c               if (lhs->part == AST_EXPR && PN_TUPLE_LEN(PN_S(lhs,0)) == 1)
PN_S              297 core/compile.c                   PN_OP op; op.a = PN_S(lhs,0); //12 bit!
PN_S              298 core/compile.c                   if (!PN_IS_PTR(PN_S(lhs,0)) && PN_S(lhs,0) == op.a) {
PN_S              299 core/compile.c                     PN_ASM2(OP_LOADPN, sreg, PN_S(lhs,0));
PN_S              301 core/compile.c                     PN_SIZE num = PN_PUT(f->values, PN_S(lhs,0));
PN_S              339 core/compile.c       if (PN_S(t,0) != PN_NIL) {
PN_S              341 core/compile.c 	      t->part == AST_CODE?"":AS_STR(PN_S(t,0)));
PN_S              342 core/compile.c         PN_TUPLE_EACH(PN_S(t,0), i, v, {
PN_S              349 core/compile.c       if (PN_S(t,0) != PN_NIL) {
PN_S              350 core/compile.c 	PN e = PN_S(t,0);
PN_S              359 core/compile.c       PN_BLOCK(reg, PN_S(t,1), PN_S(t,0));
PN_S              363 core/compile.c       PN_OP op; op.a = PN_S(t,0);
PN_S              364 core/compile.c       if (!PN_IS_PTR(PN_S(t,0)) && PN_S(t,0) == (PN)op.a) {
PN_S              365 core/compile.c         PN_ASM2(OP_LOADPN, reg, PN_S(t,0));
PN_S              367 core/compile.c         PN_SIZE num = PN_PUT(f->values, PN_S(t,0));
PN_S              371 core/compile.c       if (PN_S(t,1) != PN_NIL) {
PN_S              374 core/compile.c         PN_ARG_TABLE(PN_S(t,1), breg, 1);
PN_S              375 core/compile.c         if (PN_S(t,2) != PN_NIL) {
PN_S              377 core/compile.c           PN_BLOCK(breg, PN_S(t,2), PN_NIL);
PN_S              392 core/compile.c         c = PN_TUPLE_LEN(PN_S(lhs,0)) - 1;
PN_S              403 core/compile.c         char first_letter = PN_STR_PTR(PN_S(lhs,0))[0];
PN_S              406 core/compile.c 	      AS_STR(PN_S(lhs,0)));
PN_S              410 core/compile.c           num = PN_PUT(f->values, PN_S(lhs,0));
PN_S              418 core/compile.c           num = PN_UPVAL(PN_S(lhs,0));
PN_S              420 core/compile.c             num = PN_PUT(f->locals, PN_S(lhs,0));
PN_S              426 core/compile.c 	      fname = PN_S(lhs,0);
PN_S              433 core/compile.c           num = PN_PUT(f->values, PN_S(lhs,0));
PN_S              441 core/compile.c         num = PN_PUT(f->values, PN_S(lhs,0));
PN_S              458 core/compile.c         PN_ARG_TABLE(PN_S(lhs,1), breg, 1);
PN_S              496 core/compile.c       PN_SIZE num = PN_UPVAL(PN_S(lhs,0));
PN_S              499 core/compile.c         num = PN_PUT(f->locals, PN_S(lhs,0));
PN_S              508 core/compile.c       if (PN_IS_NUM(PN_S(t,1))) {
PN_S              512 core/compile.c       PN_ASM2(OP_LOADPN, breg + 1, (PN_S(t,1) | PN_FNUMBER));
PN_S              564 core/compile.c       int arg = (PN_S(t,1) != PN_NIL);
PN_S              565 core/compile.c       int call = (PN_S(t,2) != PN_NIL || arg);
PN_S              568 core/compile.c       if (t->part == AST_MSG && PN_S(t,0) == PN_use) {
PN_S              570 core/compile.c         PN use = PN_TUPLE_AT(PN_S(t,1), 0);
PN_S              571 core/compile.c         PN name = PN_TUPLE_AT(PN_S(t,1), 1);
PN_S              572 core/compile.c         PN list = potion_tuple_at(P,0,PN_S(t,1),2);
PN_S              581 core/compile.c       if (t->part == AST_MSG && PN_S(t,0) == PN_if) {
PN_S              596 core/compile.c           ifconst = PN_S(t->a[1], 0);
PN_S              605 core/compile.c           PN_ARG_TABLE(PN_S(t,1), breg, 0);
PN_S              611 core/compile.c       } else if (t->part == AST_MSG && PN_S(t,0) == PN_elsif) {
PN_S              629 core/compile.c           ifconst = PN_S(t->a[1], 0);
PN_S              639 core/compile.c           PN_ARG_TABLE(PN_S(t,1), breg, 0);
PN_S              646 core/compile.c       } else if (t->part == AST_MSG && PN_S(t,0) == PN_else) {
PN_S              672 core/compile.c       } else if (t->part == AST_MSG && PN_S(t,0) == PN_class) {
PN_S              676 core/compile.c         if (PN_S(t,2) != PN_NIL) {
PN_S              679 core/compile.c           if (PN_S(blk, 0) == PN_NIL)
PN_S              681 core/compile.c           PN ctor = PN_S(blk, 0);
PN_S              686 core/compile.c           PN_BLOCK(breg, (PN)blk, PN_S(t,1));
PN_S              689 core/compile.c       } else if (t->part == AST_MSG && (PN_S(t,0) == PN_while || PN_S(t,0) == PN_loop)) {
PN_S              693 core/compile.c         if (PN_S(t,0) == PN_while) {
PN_S              694 core/compile.c           PN_ARG_TABLE(PN_S(t,1), breg, 0);
PN_S              697 core/compile.c         } else if (PN_S(t,1) || !t->a[2]) {
PN_S              704 core/compile.c         if (PN_S(t,0) == PN_while) {
PN_S              713 core/compile.c       } else if (t->part == AST_MSG && PN_S(t,0) == PN_return) {
PN_S              714 core/compile.c         PN_ARG_TABLE(PN_S(t,1), reg, 0);
PN_S              716 core/compile.c       } else if (t->part == AST_MSG && PN_S(t,0) == PN_break) {
PN_S              723 core/compile.c       } else if (t->part == AST_MSG && PN_S(t,0) == PN_continue) {
PN_S              730 core/compile.c       } else if (t->part == AST_MSG && PN_S(t,0) == PN_self) {
PN_S              736 core/compile.c         PN v = PN_S(t,0);
PN_S              746 core/compile.c         if (num == PN_NONE && PN_S(t,0) != PN_NIL) {
PN_S              749 core/compile.c           num = PN_PUT(f->values, PN_S(t,0));
PN_S              757 core/compile.c           if (PN_S(t,2) != PN_NIL && (PN_PART(PN_S(t,2)) == AST_MSG)) {
PN_S              761 core/compile.c             num = PN_PUT(f->values, PN_S(t2,0));
PN_S              765 core/compile.c             PN_ASM2(PN_S(t,1) != PN_NIL || PN_S(t,2) != PN_NIL ? OP_MSG : OP_BIND, reg, breg);
PN_S              767 core/compile.c           if (t->part == AST_QUERY && PN_S(t,1) != PN_NIL) {
PN_S              771 core/compile.c #define LOAD_ARG() PN_ARG_TABLE(PN_S(t,1), breg, 1)
PN_S              773 core/compile.c             u8 part1 = PN_PART(PN_S(t,1));
PN_S              774 core/compile.c             if (part1 == AST_VALUE || (part1 == AST_LIST && PN_S(t,2) == PN_NIL)) {
PN_S              778 core/compile.c           if (PN_S(t,2) != PN_NIL && (PN_PART(PN_S(t,2)) == AST_PROTO)) {
PN_S              781 core/compile.c             PN_BLOCK(breg, PN_S(t2,1), PN_S(t2,0));
PN_S              783 core/compile.c             if (PN_S(t,1) == PN_NIL && PN_S(t,2) == PN_NIL)
PN_S              785 core/compile.c             if (PN_S(t,2) != PN_NIL && PN_PART(PN_S(t,2)) == AST_BLOCK) {
PN_S              787 core/compile.c               PN_BLOCK(breg, PN_S(t,2), PN_S(t,1));
PN_S              795 core/compile.c             if (PN_S(t,1) != PN_NIL) {
PN_S              808 core/compile.c             PN_ARG_TABLE(PN_S(t,1), breg, 1);
PN_S              809 core/compile.c             if (PN_S(t,2) != PN_NIL) {
PN_S              811 core/compile.c               PN_BLOCK(breg, PN_S(t,2), PN_NIL);
PN_S              824 core/compile.c       PN_SIZE num = PN_PUT(f->values, PN_S(t,0));
PN_S              841 core/compile.c       PN_SIZE num = PN_PUT(f->values, PN_S(t,0));
PN_S              844 core/compile.c       if (PN_S(t,1) != PN_NIL)
PN_S              846 core/compile.c       else if (PN_S(t,2) != PN_NIL)
PN_S              848 core/compile.c       if (PN_S(t,2) != PN_NIL)
PN_S              857 core/compile.c       if (PN_S(t,0) != PN_NIL) {
PN_S              858 core/compile.c         PN_TUPLE_EACH(PN_S(t,0), i, v, {
PN_S              861 core/compile.c 	    vPN(Source) lhs = PN_SRC(PN_S(v,0));
PN_S              862 core/compile.c             if (lhs->part == AST_EXPR && PN_TUPLE_LEN(PN_S(lhs,0)) == 1)
PN_S              867 core/compile.c                 PN_SIZE num = PN_PUT(f->values, PN_S(lhs,0));
PN_S              895 core/compile.c       name = PN_S(t,0);				\
PN_S              926 core/compile.c   PN sig = PN_S(t,0);
PN_S              937 core/compile.c   if (t->part == AST_LIST && PN_S(t,0) != PN_NIL) {
PN_S              939 core/compile.c     ({ struct PNTuple * volatile __tv = ((struct PNTuple *)potion_fwd(PN_S(t,0)));
PN_S              951 core/compile.c 	PN v = PN_S(lhs,0);
PN_S              971 core/compile.c         if (lhs->part == AST_EXPR && PN_TUPLE_LEN(PN_S(lhs,0)) == 1) {
PN_S              988 core/compile.c 	    PN v = PN_NUM(PN_STR_PTR(PN_S(rhs,0))[0]); // = type. TODO: one-char => VTABLE
PN_S             1004 core/compile.c             PN v = PN_S(SRC_TUPLE_AT(rhs,0),0);
PN_S             1010 core/compile.c 	  PN v = PN_S(rhs,0);
PN_S              171 syn/syntax-p5.y           { PN s1 = PN_TUP0(); PN_TUPLE_EACH(PN_S(l,0), i, v, {
PN_S              173 syn/syntax-p5.y             s1 = PN_PUSH(s1, PN_AST2(ASSIGN, v, potion_tuple_at(P,0,PN_S(r,0),PN_NUM(i))));
PN_S              176 syn/syntax-p5.y           { PN s1 = PN_TUP0(); PN_TUPLE_EACH(PN_S(l,0), i, v, {
PN_S              177 syn/syntax-p5.y             s1 = PN_PUSH(s1, PN_AST2(ASSIGN, v, potion_tuple_at(P,0,PN_S(r,0),PN_NUM(i))));
PN_S              248 syn/syntax-p5.y     | c:call e:expr 		{ $$ = PN_AST(EXPR, PN_PUSH(PN_TUPIF(PN_S(e,0)),
PN_S              250 syn/syntax-p5.y     | c:call l:listexprs 	{ $$ = PN_SHIFT(PN_S(l,0));
PN_S              251 syn/syntax-p5.y             if (!PN_S(l, 0)) { PN_SRC(c)->a[1] = PN_SRC($$); }
PN_S              529 syn/syntax-p5.y                         { SRC_TPL3(n, PN_NUM(':'), PN_S(d,0)) }
PN_S              552 syn/syntax-p5.y      | n:arg2-name - assign d:value			{ SRC_TPL3(n,PN_NUM(':'), PN_S(d,0)) }
PN_S              356 syn/syntax.y                           { SRC_TPL3(n, PN_NUM(':'), PN_S(d,0)) }