// File: /workspace/github_cpp_makefile_star2_O2/ArashPartow[P]exprtk/./exprtk.hpp
// Function: exprtk::function_compositor<double>::forward(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, unsigned long const&, exprtk::symbol_table<double>&, bool)
inline bool forward(const std::string& name,
                          const std::size_t& arg_count,
                          symbol_table_t& sym_table,
                          const bool ret_present = false)
      {
         switch (arg_count)
         {
            #define case_stmt(N)                                     \
            case N : (fp_map_[arg_count])[name] =                    \
                     (!ret_present) ? static_cast<base_func*>        \
                                      (new func_##N##param) :        \
                                      static_cast<base_func*>        \
                                      (new func_##N##param_retval) ; \
                     break;                                          \

            case_stmt(0) case_stmt(1) case_stmt(2)
            case_stmt(3) case_stmt(4) case_stmt(5)
            case_stmt(6)
            #undef case_stmt
         }

         exprtk::ifunction<T>& ifunc = (*(fp_map_[arg_count])[name]);

         return sym_table.add_function(name,ifunc);
      }

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movq %rcx, %r14
movq %rdx, %r13
movq %rsi, %r15
movq %rdi, %r12
movq (%rdx), %rax
cmpq $0x6, %rax
ja 0x2c844d
movl %r8d, %ebp
leaq 0xae7c(%rip), %rcx      # 0x2d3188
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movl $0x190, %edi            # imm = 0x190
callq 0x118100
movq %rax, %rbx
testb %bpl, %bpl
je 0x2c840f
movq %rbx, %rdi
callq 0x2c8b22
jmp 0x2c8435
movl $0x190, %edi            # imm = 0x190
callq 0x118100
movq %rax, %rbx
testb %bpl, %bpl
je 0x2c83f1
movq %rbx, %rdi
callq 0x2c8c22
jmp 0x2c8435
movl $0x190, %edi            # imm = 0x190
callq 0x118100
movq %rax, %rbx
testb %bpl, %bpl
je 0x2c83fb
movq %rbx, %rdi
callq 0x2c8ba2
jmp 0x2c8435
movl $0x190, %edi            # imm = 0x190
callq 0x118100
movq %rax, %rbx
testb %bpl, %bpl
je 0x2c8405
movq %rbx, %rdi
callq 0x2c8be2
jmp 0x2c8435
movl $0x190, %edi            # imm = 0x190
callq 0x118100
movq %rax, %rbx
testb %bpl, %bpl
je 0x2c8419
movq %rbx, %rdi
callq 0x2c8b62
jmp 0x2c8435
movl $0x190, %edi            # imm = 0x190
callq 0x118100
movq %rax, %rbx
testb %bpl, %bpl
je 0x2c8423
movq %rbx, %rdi
callq 0x2c8c62
jmp 0x2c8435
movl $0x190, %edi            # imm = 0x190
callq 0x118100
movq %rax, %rbx
testb %bpl, %bpl
je 0x2c842d
movq %rbx, %rdi
callq 0x2c8ca2
jmp 0x2c8435
movq %rbx, %rdi
callq 0x2c8bf8
jmp 0x2c8435
movq %rbx, %rdi
callq 0x2c8b78
jmp 0x2c8435
movq %rbx, %rdi
callq 0x2c8bb8
jmp 0x2c8435
movq %rbx, %rdi
callq 0x2c8afc
jmp 0x2c8435
movq %rbx, %rdi
callq 0x2c8b38
jmp 0x2c8435
movq %rbx, %rdi
callq 0x2c8c38
jmp 0x2c8435
movq %rbx, %rdi
callq 0x2c8c78
imulq $0x30, (%r13), %rdi
addq 0x960(%r12), %rdi
movq %r15, %rsi
callq 0x2c7a7c
movq %rbx, (%rax)
imulq $0x30, (%r13), %rdi
addq 0x960(%r12), %rdi
movq %r15, %rsi
callq 0x2c7a7c
movq (%rax), %rdx
movq %r14, %rdi
movq %r15, %rsi
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x1948b8
jmp 0x2c8498
jmp 0x2c8498
jmp 0x2c8498
jmp 0x2c8498
jmp 0x2c8498
jmp 0x2c8498
jmp 0x2c8498
jmp 0x2c8498
jmp 0x2c8498
jmp 0x2c8498
jmp 0x2c8498
jmp 0x2c8498
jmp 0x2c8498
movq %rax, %r14
movl $0x190, %esi            # imm = 0x190
movq %rbx, %rdi
callq 0x1180d0
movq %r14, %rdi
callq 0x118360