// File: /workspace/github_cpp_makefile_star2_O3/adamiaonr[P]rid-analytics/src/argvparser.cpp
// Function: CommandLineProcessing::ArgvParser::parseErrorDescription[abi:cxx11](int) const
std::string ArgvParser::parseErrorDescription( ParserResults _error_code ) const
{
    string descr;

    switch (_error_code)
    {
    case ArgvParser::NoParserError:
        // no error -> nothing to do
        break;
    case ArgvParser::ParserUnknownOption:
        descr = "Unknown option: '" + errorOption() + "'";
        break;
    case ArgvParser::ParserMissingValue:
        descr = "Missing required value for option: '" + errorOption()+ "'";
        break;
    case ArgvParser::ParserOptionAfterArgument:
        descr = "Misplaced option '" + errorOption() + "' detected. All option have to be BEFORE the first argument";
        break;
    case ArgvParser::ParserMalformedMultipleShortOption:
        descr = "Malformed short-options: '" + errorOption() + "'";
        break;
    case ArgvParser::ArgvParser::ParserRequiredOptionMissing:
        descr = "Required option missing: '" + errorOption() + "'";
        break;
    case ArgvParser::ParserHelpRequested: // help
        descr = usageDescription();
        break;
    default:
        cerr << "ArgvParser::documentParserErrors(): Unknown error code" << endl;
    }

    return(descr);
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x40, %rsp
movq %rsi, %rax
movq %rdi, %rbx
leaq 0x10(%rdi), %r15
movq %r15, (%rdi)
movq $0x0, 0x8(%rdi)
movb $0x0, 0x10(%rdi)
cmpl $0x8, %edx
ja 0x2105f
movl %edx, %ecx
leaq 0xf90e(%rip), %rdx      # 0x30938
movslq (%rdx,%rcx,4), %rcx
addq %rdx, %rcx
jmpq *%rcx
addq $0x138, %rax            # imm = 0x138
leaq 0xfa22(%rip), %rsi      # 0x30a62
movq %rsp, %rdi
movq %rax, %rdx
callq 0x2190d
leaq 0xfaca(%rip), %rsi      # 0x30b1c
movq %rsp, %rdi
callq 0x4760
jmp 0x21197
cmpl $0x16, %edx
je 0x21170
cmpl $0x32, %edx
jne 0x210aa
leaq 0x20(%rsp), %rdi
movq %rax, %rsi
movl $0x50, %edx
callq 0x20122
leaq 0x20(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0x4460
movq (%r14), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x2121c
movq 0x30(%rsp), %rsi
jmp 0x21214
movq 0x1df3f(%rip), %r14     # 0x3eff0
leaq 0xfa66(%rip), %rsi      # 0x30b1e
movl $0x36, %edx
movq %r14, %rdi
callq 0x4400
movq (%r14), %rax
addq -0x18(%rax), %r14
movq %r14, %rdi
movl $0xa, %esi
callq 0x4370
movsbl %al, %esi
movq 0x1df0d(%rip), %rdi     # 0x3eff0
callq 0x4040
movq %rax, %rdi
callq 0x42a0
jmp 0x2121c
addq $0x138, %rax            # imm = 0x138
leaq 0xf972(%rip), %rsi      # 0x30a74
movq %rsp, %rdi
movq %rax, %rdx
callq 0x2190d
leaq 0xfa08(%rip), %rsi      # 0x30b1c
movq %rsp, %rdi
callq 0x4760
jmp 0x21197
addq $0x138, %rax            # imm = 0x138
leaq 0xf96e(%rip), %rsi      # 0x30a99
movq %rsp, %rdi
movq %rax, %rdx
callq 0x2190d
leaq 0xf96f(%rip), %rsi      # 0x30aac
movq %rsp, %rdi
callq 0x4760
jmp 0x21197
addq $0x138, %rax            # imm = 0x138
leaq 0xf994(%rip), %rsi      # 0x30ae8
movq %rsp, %rdi
movq %rax, %rdx
callq 0x2190d
leaq 0xf9b6(%rip), %rsi      # 0x30b1c
movq %rsp, %rdi
callq 0x4760
jmp 0x21197
addq $0x138, %rax            # imm = 0x138
leaq 0xf986(%rip), %rsi      # 0x30b03
movq %rsp, %rdi
movq %rax, %rdx
callq 0x2190d
leaq 0xf98d(%rip), %rsi      # 0x30b1c
movq %rsp, %rdi
callq 0x4760
leaq 0x30(%rsp), %r15
movq %r15, -0x10(%r15)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x211be
movq %rdx, 0x20(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x30(%rsp)
jmp 0x211c5
movups (%rcx), %xmm0
movups %xmm0, (%r15)
movq 0x8(%rax), %rdx
leaq 0x20(%rsp), %r14
movq %rdx, 0x8(%r14)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq %rbx, %rdi
movq %r14, %rsi
callq 0x4460
movq (%r14), %rdi
cmpq %r15, %rdi
je 0x21201
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x43a0
leaq 0x10(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x2121c
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x43a0
movq %rbx, %rax
addq $0x40, %rsp
popq %rbx
popq %r14
popq %r15
retq
jmp 0x21235
jmp 0x2125d
jmp 0x2125d
jmp 0x21235
jmp 0x21235
jmp 0x21235
movq %rax, %r14
leaq 0x10(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x21260
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x43a0
jmp 0x21260
jmp 0x2125d
jmp 0x2125d
jmp 0x2125d
jmp 0x2125d
movq %rax, %r14
movq (%rbx), %rdi
cmpq %r15, %rdi
je 0x21273
movq (%r15), %rsi
incq %rsi
callq 0x43a0
movq %r14, %rdi
callq 0x4700
nop