// File: /workspace/github_cpp_makefile_star2_O2/ArashPartow[P]exprtk/./exprtk.hpp
// Function: exprtk::lexer::generator::scan_token()
inline void scan_token()
         {
            const char_t c = *s_itr_;

            if (details::is_whitespace(c))
            {
               skip_whitespace();
               return;
            }
            else if (is_comment_start(s_itr_))
            {
               skip_comments();
               return;
            }
            else if (details::is_operator_char(c))
            {
               scan_operator();
               return;
            }
            else if (details::is_letter(c))
            {
               scan_symbol();
               return;
            }
            else if (('.' == c) && !next_is_digit(s_itr_))
            {
               scan_operator();
               return;
            }
            else if (details::is_digit(c) || ('.' == c))
            {
               scan_number();
               return;
            }
            else if ('$' == c)
            {
               scan_special_function();
               return;
            }
            #ifndef exprtk_disable_string_capabilities
            else if ('\'' == c)
            {
               scan_string();
               return;
            }
            #endif
            else if ('~' == c)
            {
               token_t t;
               t.set_symbol(s_itr_, s_itr_ + 1, base_itr_);
               token_list_.push_back(t);
               ++s_itr_;
               return;
            }
            else
            {
               token_t t;
               t.set_error(token::e_error, s_itr_, s_itr_ + 2, base_itr_);
               token_list_.push_back(t);
               ++s_itr_;
            }

// Assembly:
pushq %r14
pushq %rbx
subq $0x38, %rsp
movq %rdi, %rbx
movq 0x60(%rdi), %rsi
movzbl (%rsi), %r14d
cmpq $0x20, %r14
ja 0x1f7bbb
movabsq $0x100003f00, %rax      # imm = 0x100003F00
btq %r14, %rax
jae 0x1f7bbb
movq %rbx, %rdi
addq $0x38, %rsp
popq %rbx
popq %r14
jmp 0x1f7d14
movq %rbx, %rdi
callq 0x1f7d44
testb %al, %al
je 0x1f7bd6
movq %rbx, %rdi
addq $0x38, %rsp
popq %rbx
popq %r14
jmp 0x1f7d78
movsbl %r14b, %edi
callq 0x1f7e83
testb %al, %al
je 0x1f7bf2
movq %rbx, %rdi
addq $0x38, %rsp
popq %rbx
popq %r14
jmp 0x1f7eaa
movl %r14d, %eax
andb $-0x21, %al
addb $-0x41, %al
cmpb $0x19, %al
ja 0x1f7c0c
movq %rbx, %rdi
addq $0x38, %rsp
popq %rbx
popq %r14
jmp 0x1f80ba
cmpl $0x2e, %r14d
jne 0x1f7c29
movq 0x60(%rbx), %rax
incq %rax
cmpq 0x68(%rbx), %rax
je 0x1f7be3
movb (%rax), %al
addb $-0x30, %al
cmpb $0xa, %al
jae 0x1f7be3
jmp 0x1f7c31
leal -0x30(%r14), %eax
cmpb $0x9, %al
ja 0x1f7c40
movq %rbx, %rdi
addq $0x38, %rsp
popq %rbx
popq %r14
jmp 0x1f818c
cmpl $0x7e, %r14d
je 0x1f7c70
cmpl $0x27, %r14d
je 0x1f7c61
cmpl $0x24, %r14d
jne 0x1f7ca0
movq %rbx, %rdi
addq $0x38, %rsp
popq %rbx
popq %r14
jmp 0x1f8368
movq %rbx, %rdi
addq $0x38, %rsp
popq %rbx
popq %r14
jmp 0x1f8456
leaq 0x8(%rsp), %r14
movq %r14, %rdi
callq 0x19e4ae
movq 0x58(%rbx), %rcx
movq 0x60(%rbx), %rsi
leaq 0x1(%rsi), %rdx
movq %r14, %rdi
callq 0x1f86b2
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x19f258
jmp 0x1f7cd1
leaq 0x8(%rsp), %r14
movq %r14, %rdi
callq 0x19e4ae
movq 0x58(%rbx), %r8
movq 0x60(%rbx), %rdx
leaq 0x2(%rdx), %rcx
pushq $0x1
popq %rsi
movq %r14, %rdi
callq 0x1f86e4
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x19f258
incq 0x60(%rbx)
leaq 0x10(%rsp), %rdi
callq 0x118648
addq $0x38, %rsp
popq %rbx
popq %r14
retq
jmp 0x1f7ce9
movq %rax, %rbx
leaq 0x10(%rsp), %rdi
callq 0x118648
movq %rbx, %rdi
callq 0x118360