// File: /workspace/github_cpp_makefile_star2_O1/ArashPartow[P]exprtk/./exprtk.hpp
// Function: exprtk::parser<double>::expression_generator<double>::lodge_assignment(exprtk::parser<double>::symbol_type, exprtk::details::expression_node<double>*)
void lodge_assignment(symbol_type cst, expression_node_ptr node)
         {
            parser_->state_.activate_side_effect("lodge_assignment()");

            if (!parser_->dec_.collect_assignments())
               return;

            std::string symbol_name;

            switch (cst)
            {
               case e_st_variable : symbol_name = parser_->symtab_store_
                                                     .get_variable_name(node);
                                    break;

               #ifndef exprtk_disable_string_capabilities
               case e_st_string   : symbol_name = parser_->symtab_store_
                                                     .get_stringvar_name(node);
                                    break;
               #endif

               case e_st_vector   : {
                                       typedef details::vector_holder<T> vector_holder_t;

                                       vector_holder_t& vh = static_cast<vector_node_t*>(node)->vec_holder();

                                       symbol_name = parser_->symtab_store_.get_vector_name(&vh);
                                    }
                                    break;

               case e_st_vecelem  : {
                                       typedef details::vector_holder<T> vector_holder_t;

                                       vector_holder_t& vh = static_cast<vector_elem_node_t*>(node)->vec_holder();

                                       symbol_name = parser_->symtab_store_.get_vector_name(&vh);

                                       cst = e_st_vector;
                                    }
                                    break;

               default            : return;
            }

            if (!symbol_name.empty())
            {
               parser_->dec_.add_assignment(symbol_name,cst);
            }
         }

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x48, %rsp
movq %rdx, %r14
movl %esi, %r15d
movq %rdi, %rbx
movq 0x68(%rdi), %r12
leaq 0x10(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x101fc6(%rip), %rsi    # 0x3be1bb
leaq 0x101fd1(%rip), %rdx    # 0x3be1cd
movq %rsp, %rdi
callq 0x1eabb8
cmpb $0x0, 0x3ac(%r12)
jne 0x2bc218
movb $0x1, 0x3ac(%r12)
movq (%rsp), %rdi
cmpq %r13, %rdi
je 0x2bc22e
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x68(%rbx), %rax
cmpb $0x1, 0x2ba(%rax)
jne 0x2bc4e7
leaq 0x38(%rsp), %r12
movq %r12, -0x10(%r12)
movq $0x0, -0x8(%r12)
movb $0x0, (%r12)
decl %r15d
cmpl $0x3, %r15d
ja 0x2bc4d0
leaq 0xf8759(%rip), %rcx     # 0x3b49c4
movslq (%rcx,%r15,4), %rdx
addq %rcx, %rdx
jmpq *%rdx
movq 0x298(%rax), %rax
movq (%rax), %rax
movq 0x8(%rax), %r15
cmpq $0x0, 0x28(%r15)
je 0x2bc420
movq 0x18(%r15), %rax
addq $0x8, %r15
cmpq %rax, %r15
je 0x2bc420
cmpq %r14, 0x48(%rax)
je 0x2bc532
movq %rax, %rdi
callq 0x1204c0
jmp 0x2bc295
movq 0x298(%rax), %rax
movq (%rax), %rax
movq 0x8(%rax), %r15
cmpq $0x0, 0x178(%r15)
je 0x2bc392
movq 0x168(%r15), %rax
addq $0x158, %r15            # imm = 0x158
cmpq %rax, %r15
je 0x2bc392
movq 0x28(%r14), %r14
cmpq %r14, 0x48(%rax)
je 0x2bc511
movq %rax, %rdi
callq 0x1204c0
cmpq %rax, %r15
jne 0x2bc2e9
jmp 0x2bc392
movq 0x298(%rax), %rax
movq (%rax), %rax
movq 0x8(%rax), %r15
cmpq $0x0, 0x1b0(%r15)
je 0x2bc3dd
movq 0x1a0(%r15), %rax
addq $0x190, %r15            # imm = 0x190
cmpq %rax, %r15
je 0x2bc3dd
cmpq %r14, 0x48(%rax)
je 0x2bc4f6
movq %rax, %rdi
callq 0x1204c0
jmp 0x2bc32f
movq 0x298(%rax), %rax
movq (%rax), %rax
movq 0x8(%rax), %r15
cmpq $0x0, 0x178(%r15)
je 0x2bc392
movq 0x168(%r15), %rax
addq $0x158, %r15            # imm = 0x158
cmpq %rax, %r15
je 0x2bc392
movq 0x28(%r14), %r14
cmpq %r14, 0x48(%rax)
je 0x2bc553
movq %rax, %rdi
callq 0x1204c0
cmpq %rax, %r15
jne 0x2bc37b
leaq 0x10(%rsp), %rax
movq %rax, (%rsp)
movq $0x0, 0x8(%rsp)
movb $0x0, 0x10(%rsp)
leaq 0x28(%rsp), %rdi
movq %rsp, %r14
movq %r14, %rsi
callq 0x1202b0
movq (%r14), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x2bc3d3
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x1200c0
movl $0x2, %ebp
jmp 0x2bc466
movq %r13, (%rsp)
movq $0x0, 0x8(%rsp)
movb $0x0, 0x10(%rsp)
leaq 0x28(%rsp), %rdi
movq %rsp, %r14
movq %r14, %rsi
callq 0x1202b0
movq (%r14), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x2bc419
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x1200c0
movl $0x4, %ebp
jmp 0x2bc466
leaq 0x10(%rsp), %rax
movq %rax, (%rsp)
movq $0x0, 0x8(%rsp)
movb $0x0, 0x10(%rsp)
leaq 0x28(%rsp), %rdi
movq %rsp, %r14
movq %r14, %rsi
callq 0x1202b0
movq (%r14), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x2bc461
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x1200c0
movl $0x1, %ebp
movq 0x30(%rsp), %rdx
testq %rdx, %rdx
je 0x2bc4d0
cmpl $0x4, %ebp
ja 0x2bc4d0
movl $0x16, %eax
btl %ebp, %eax
jae 0x2bc4d0
movq 0x68(%rbx), %rbx
cmpb $0x1, 0x2ba(%rbx)
jne 0x2bc4d0
leaq 0x10(%rsp), %r14
movq %r14, -0x10(%r14)
movq 0x28(%rsp), %rsi
addq %rsi, %rdx
movq %rsp, %rdi
callq 0x1eda34
addq $0x2d8, %rbx            # imm = 0x2D8
movq %rsp, %rsi
movl %ebp, 0x20(%rsi)
movq %rbx, %rdi
callq 0x294bc0
movq (%rsp), %rdi
cmpq %r14, %rdi
je 0x2bc4d0
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x28(%rsp), %rdi
cmpq %r12, %rdi
je 0x2bc4e7
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x1200c0
addq $0x48, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rsp, %rdi
movq %r13, (%rdi)
movq 0x20(%rax), %rsi
movq 0x28(%rax), %rdx
addq %rsi, %rdx
callq 0x1eda34
jmp 0x2bc3ef
leaq 0x10(%rsp), %rcx
movq %rcx, -0x10(%rcx)
movq 0x20(%rax), %rsi
movq 0x28(%rax), %rdx
addq %rsi, %rdx
movq %rsp, %rdi
callq 0x1eda34
jmp 0x2bc3a9
leaq 0x10(%rsp), %rcx
movq %rcx, -0x10(%rcx)
movq 0x20(%rax), %rsi
movq 0x28(%rax), %rdx
addq %rsi, %rdx
movq %rsp, %rdi
callq 0x1eda34
jmp 0x2bc437
leaq 0x10(%rsp), %rcx
movq %rcx, -0x10(%rcx)
movq 0x20(%rax), %rsi
movq 0x28(%rax), %rdx
addq %rsi, %rdx
movq %rsp, %rdi
callq 0x1eda34
jmp 0x2bc3a9
jmp 0x2bc597
jmp 0x2bc597
jmp 0x2bc597
jmp 0x2bc597
movq %rax, %rbx
movq (%rsp), %rdi
cmpq %r14, %rdi
je 0x2bc59a
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x1200c0
jmp 0x2bc59a
movq %rax, %rbx
movq 0x28(%rsp), %rdi
cmpq %r12, %rdi
je 0x2bc5b1
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq %rbx, %rdi
callq 0x120330
nop