// File: AgathokakologicalBit[P]wit/src/parsing/token.cpp
// Function: akbit::system::parsing::get_type_name[abi:cxx11](akbit::system::parsing::TokenType)
std::string get_type_name(TokenType type)
  {
    using tt = TokenType;

    switch (type)
    {
      case tt::t_commentary: return "commentary";
      case tt::t_identifier: return "identifier";
      case tt::t_character: return "character";
      case tt::t_string: return "string";
      case tt::t_number: return "number";
      case tt::t_operator: return "operator";
      case tt::t_eof: return "##EOF##";
    
      default: return "#???";
    }
  }

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x80, %rsp
movq %rdi, -0x40(%rbp)
movq %rdi, %rax
movq %rax, -0x38(%rbp)
movq %rdi, -0x8(%rbp)
movl %esi, -0xc(%rbp)
movl -0xc(%rbp), %eax
decl %eax
movl %eax, %ecx
movq %rcx, -0x30(%rbp)
subl $0x6, %eax
ja 0x1011c
movq -0x30(%rbp), %rax
leaq 0x2646c(%rip), %rcx     # 0x36378
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq -0xd(%rbp), %rdi
movq %rdi, -0x48(%rbp)
callq 0x4570
movq -0x40(%rbp), %rdi
movq -0x48(%rbp), %rdx
leaq 0x264ef(%rip), %rsi     # 0x36420
callq 0x9e70
jmp 0xff38
leaq -0xd(%rbp), %rdi
callq 0x4370
jmp 0x10161
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0xd(%rbp), %rdi
callq 0x4370
jmp 0x1016e
leaq -0x1d(%rbp), %rdi
movq %rdi, -0x50(%rbp)
callq 0x4570
movq -0x40(%rbp), %rdi
movq -0x50(%rbp), %rdx
leaq 0x264af(%rip), %rsi     # 0x3642b
callq 0x9e70
jmp 0xff83
leaq -0x1d(%rbp), %rdi
callq 0x4370
jmp 0x10161
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x1d(%rbp), %rdi
callq 0x4370
jmp 0x1016e
leaq -0x1e(%rbp), %rdi
movq %rdi, -0x58(%rbp)
callq 0x4570
movq -0x40(%rbp), %rdi
movq -0x58(%rbp), %rdx
leaq 0x261be(%rip), %rsi     # 0x36185
callq 0x9e70
jmp 0xffce
leaq -0x1e(%rbp), %rdi
callq 0x4370
jmp 0x10161
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x1e(%rbp), %rdi
callq 0x4370
jmp 0x1016e
leaq -0x1f(%rbp), %rdi
movq %rdi, -0x60(%rbp)
callq 0x4570
movq -0x40(%rbp), %rdi
movq -0x60(%rbp), %rdx
leaq 0x2616c(%rip), %rsi     # 0x3617e
callq 0x9e70
jmp 0x10019
leaq -0x1f(%rbp), %rdi
callq 0x4370
jmp 0x10161
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x1f(%rbp), %rdi
callq 0x4370
jmp 0x1016e
leaq -0x20(%rbp), %rdi
movq %rdi, -0x68(%rbp)
callq 0x4570
movq -0x40(%rbp), %rdi
movq -0x68(%rbp), %rdx
leaq 0x263d9(%rip), %rsi     # 0x36436
callq 0x9e70
jmp 0x10064
leaq -0x20(%rbp), %rdi
callq 0x4370
jmp 0x10161
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x20(%rbp), %rdi
callq 0x4370
jmp 0x1016e
leaq -0x21(%rbp), %rdi
movq %rdi, -0x70(%rbp)
callq 0x4570
movq -0x40(%rbp), %rdi
movq -0x70(%rbp), %rdx
leaq 0x26395(%rip), %rsi     # 0x3643d
callq 0x9e70
jmp 0x100af
leaq -0x21(%rbp), %rdi
callq 0x4370
jmp 0x10161
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x21(%rbp), %rdi
callq 0x4370
jmp 0x1016e
leaq -0x22(%rbp), %rdi
movq %rdi, -0x78(%rbp)
callq 0x4570
movq -0x40(%rbp), %rdi
movq -0x78(%rbp), %rdx
leaq 0x26353(%rip), %rsi     # 0x36446
callq 0x9e70
jmp 0x100fa
leaq -0x22(%rbp), %rdi
callq 0x4370
jmp 0x10161
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x22(%rbp), %rdi
callq 0x4370
jmp 0x1016e
leaq -0x23(%rbp), %rdi
movq %rdi, -0x80(%rbp)
callq 0x4570
movq -0x40(%rbp), %rdi
movq -0x80(%rbp), %rdx
leaq 0x25fce(%rip), %rsi     # 0x36106
callq 0x9e70
jmp 0x1013f
leaq -0x23(%rbp), %rdi
callq 0x4370
jmp 0x10161
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x23(%rbp), %rdi
callq 0x4370
jmp 0x1016e
movq -0x38(%rbp), %rax
addq $0x80, %rsp
popq %rbp
retq
movq -0x18(%rbp), %rdi
callq 0x4560
nopw (%rax,%rax)