// File: Silica[P]PSL/./PSL/parser.h
// Function: PSL::variable::Parser::ParseTable(PSL::variable&)
void ParseTable(variable &c)
	{
		c.pushcode(new Variable::PUSH_NULL);
		while (int n = t->checkNext())
		{
			if (n == ']')
			{
				t->getNext();
				return;
			}
			else if (n == Tokenizer::IDENTIFIER || n == Tokenizer::STRING)
			{
				string name = t->nstr;
				t->getNext();
				if (t->getNextIf(':'))
				{
					getexp11(c);
					c.pushcode(new Variable::SET_MEMBER(name));
				}
				else
				{
					if (n == Tokenizer::IDENTIFIER)
						c.pushcode(new Variable::VARIABLE(name));
					else
						c.pushcode(new Variable::PUSH_STRING(name));
					getSuffOp(c);
					getexp11(c, true);
					c.pushcode(new Variable::ARRAY_PUSH);
				}
			}
			else if (n == Tokenizer::INT)
			{
				int i = t->nint;
				t->getNext();
				if (t->getNextIf(':'))
				{
					getexp11(c);
					c.pushcode(new Variable::SET_INDEX(i));
				}
				else
				{
					c.pushcode(new Variable::PUSH_INT(i));
					getSuffOp(c);
					getexp11(c, true);
					c.pushcode(new Variable::ARRAY_PUSH);
				}
			}
			else
			{
				getexp11(c);
				c.pushcode(new Variable::ARRAY_PUSH);
			}
			if (!t->getNextIf(','))
			{
				if (t->checkNext() != ']')
				{
					Error(TINA, ',', "object member");
					return;
				}
			}
		}
	}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xd0, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x48(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x40(%rbp)
movl $0x8, %edi
callq 0x1ee10
movq %rax, %rdi
movq %rdi, -0x38(%rbp)
callq 0x23180
movq -0x40(%rbp), %rdi
movq -0x38(%rbp), %rsi
callq 0x23150
movq -0x48(%rbp), %rax
movq (%rax), %rdi
callq 0x232e0
movl %eax, -0x14(%rbp)
cmpl $0x0, -0x14(%rbp)
je 0x2b5ba
cmpl $0x5d, -0x14(%rbp)
jne 0x2b1d6
movq -0x48(%rbp), %rax
movq (%rax), %rdi
callq 0x26620
jmp 0x2b5ba
cmpl $0x1, -0x14(%rbp)
je 0x2b1e6
cmpl $0x5, -0x14(%rbp)
jne 0x2b3c5
movq -0x48(%rbp), %rax
movq (%rax), %rsi
addq $0x68, %rsi
leaq -0x20(%rbp), %rdi
callq 0x15ea0
movq -0x48(%rbp), %rax
movq (%rax), %rdi
callq 0x26620
jmp 0x2b208
movq -0x48(%rbp), %rax
movq (%rax), %rdi
movl $0x3a, %esi
callq 0x27d30
movb %al, -0x49(%rbp)
jmp 0x2b21e
movb -0x49(%rbp), %al
testb $0x1, %al
jne 0x2b227
jmp 0x2b29e
movq -0x48(%rbp), %rdi
movq -0x10(%rbp), %rsi
xorl %edx, %edx
callq 0x29590
jmp 0x2b238
movq -0x10(%rbp), %rax
movq %rax, -0x60(%rbp)
movl $0x10, %edi
callq 0x2c050
movq %rax, -0x58(%rbp)
jmp 0x2b250
movq -0x58(%rbp), %rdi
leaq -0x20(%rbp), %rsi
callq 0x2c070
jmp 0x2b25f
movq -0x58(%rbp), %rsi
movq -0x60(%rbp), %rdi
callq 0x23150
jmp 0x2b26e
jmp 0x2b3a9
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0x2b3b7
movq -0x58(%rbp), %rdi
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
callq 0x2c100
jmp 0x2b3b7
cmpl $0x1, -0x14(%rbp)
jne 0x2b2f6
movq -0x10(%rbp), %rax
movq %rax, -0x70(%rbp)
movl $0x10, %edi
callq 0x28160
movq %rax, -0x68(%rbp)
jmp 0x2b2bc
movq -0x68(%rbp), %rdi
leaq -0x20(%rbp), %rsi
callq 0x28180
jmp 0x2b2cb
movq -0x68(%rbp), %rsi
movq -0x70(%rbp), %rdi
callq 0x23150
jmp 0x2b2da
jmp 0x2b345
movq -0x68(%rbp), %rdi
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
callq 0x28210
jmp 0x2b3b7
movq -0x10(%rbp), %rax
movq %rax, -0x80(%rbp)
movl $0x10, %edi
callq 0x2bb30
movq %rax, -0x78(%rbp)
jmp 0x2b30e
movq -0x78(%rbp), %rdi
leaq -0x20(%rbp), %rsi
callq 0x2bb50
jmp 0x2b31d
movq -0x78(%rbp), %rsi
movq -0x80(%rbp), %rdi
callq 0x23150
jmp 0x2b32c
jmp 0x2b345
movq -0x78(%rbp), %rdi
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
callq 0x2bbf0
jmp 0x2b3b7
movq -0x48(%rbp), %rdi
movq -0x10(%rbp), %rsi
callq 0x28280
jmp 0x2b354
movq -0x48(%rbp), %rdi
movq -0x10(%rbp), %rsi
movl $0x1, %edx
callq 0x29590
jmp 0x2b368
movq -0x10(%rbp), %rax
movq %rax, -0x90(%rbp)
movl $0x8, %edi
callq 0x1ee10
movq %rax, -0x88(%rbp)
jmp 0x2b386
movq -0x88(%rbp), %rdi
callq 0x2c130
movq -0x90(%rbp), %rdi
movq -0x88(%rbp), %rsi
callq 0x23150
jmp 0x2b3a7
jmp 0x2b3a9
leaq -0x20(%rbp), %rdi
callq 0xc950
jmp 0x2b569
leaq -0x20(%rbp), %rdi
callq 0xc950
jmp 0x2b5c3
cmpl $0x2, -0x14(%rbp)
jne 0x2b521
movq -0x48(%rbp), %rax
movq (%rax), %rcx
movl 0x5c(%rcx), %ecx
movl %ecx, -0x30(%rbp)
movq (%rax), %rdi
callq 0x26620
movq -0x48(%rbp), %rax
movq (%rax), %rdi
movl $0x3a, %esi
callq 0x27d30
testb $0x1, %al
jne 0x2b3fb
jmp 0x2b46b
movq -0x48(%rbp), %rdi
movq -0x10(%rbp), %rsi
xorl %edx, %edx
callq 0x29590
movq -0x10(%rbp), %rax
movq %rax, -0xa0(%rbp)
movl $0x10, %edi
callq 0x2c170
movq %rax, %rdi
movq %rdi, %rax
movq %rax, -0x98(%rbp)
movl -0x30(%rbp), %esi
callq 0x2c190
jmp 0x2b436
movq -0x98(%rbp), %rsi
movq -0xa0(%rbp), %rdi
callq 0x23150
jmp 0x2b51f
movq -0x98(%rbp), %rdi
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
callq 0x2c1d0
jmp 0x2b5c3
movq -0x10(%rbp), %rax
movq %rax, -0xb0(%rbp)
movl $0x10, %edi
callq 0x2b820
movq %rax, %rdi
movq %rdi, %rax
movq %rax, -0xa8(%rbp)
movl -0x30(%rbp), %esi
callq 0x2b840
jmp 0x2b497
movq -0xa8(%rbp), %rsi
movq -0xb0(%rbp), %rdi
callq 0x23150
movq -0x48(%rbp), %rdi
movq -0x10(%rbp), %rsi
callq 0x28280
movq -0x48(%rbp), %rdi
movq -0x10(%rbp), %rsi
movl $0x1, %edx
callq 0x29590
movq -0x10(%rbp), %rax
movq %rax, -0xc0(%rbp)
movl $0x8, %edi
callq 0x1ee10
movq %rax, %rdi
movq %rdi, -0xb8(%rbp)
callq 0x2c130
movq -0xc0(%rbp), %rdi
movq -0xb8(%rbp), %rsi
callq 0x23150
jmp 0x2b51f
movq -0xa8(%rbp), %rdi
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
callq 0x2b8e0
jmp 0x2b5c3
jmp 0x2b567
movq -0x48(%rbp), %rdi
movq -0x10(%rbp), %rsi
xorl %edx, %edx
callq 0x29590
movq -0x10(%rbp), %rax
movq %rax, -0xd0(%rbp)
movl $0x8, %edi
callq 0x1ee10
movq %rax, %rdi
movq %rdi, -0xc8(%rbp)
callq 0x2c130
movq -0xd0(%rbp), %rdi
movq -0xc8(%rbp), %rsi
callq 0x23150
jmp 0x2b569
jmp 0x2b56b
movq -0x48(%rbp), %rax
movq (%rax), %rdi
movl $0x2c, %esi
callq 0x27d30
testb $0x1, %al
jne 0x2b5b5
movq -0x48(%rbp), %rax
movq (%rax), %rdi
callq 0x232e0
cmpl $0x5d, %eax
je 0x2b5b3
movq -0x48(%rbp), %rdi
movl $0x2, %esi
movl $0x2c, %edx
leaq 0x13616(%rip), %rcx     # 0x3ebbc
movl $0xffffffff, %r8d       # imm = 0xFFFFFFFF
callq 0x27d80
jmp 0x2b5ba
jmp 0x2b5b5
jmp 0x2b1a6
addq $0xd0, %rsp
popq %rbp
retq
movq -0x28(%rbp), %rdi
callq 0xc280
nopl (%rax)