// File: /workspace/github_cpp_makefile_star2_O2/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 %r14
pushq %rbx
subq $0x48, %rsp
movq %rdi, %rbx
leaq 0x10(%rdi), %rax
movq %rax, (%rdi)
andq $0x0, 0x8(%rdi)
movq %rsi, %rax
movb $0x0, 0x10(%rdi)
cmpl $0x8, %edx
ja 0x1c225
movl %edx, %ecx
leaq 0xe911(%rip), %rdx      # 0x2aaf8
movslq (%rdx,%rcx,4), %rcx
addq %rdx, %rcx
jmpq *%rcx
addq $0x138, %rax            # imm = 0x138
leaq 0xea25(%rip), %rsi      # 0x2ac22
leaq 0x8(%rsp), %rdi
movq %rax, %rdx
callq 0x1c862
leaq 0xeacb(%rip), %rdx      # 0x2acdc
leaq 0x28(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0x179a0
jmp 0x1c344
cmpl $0x16, %edx
je 0x1c314
cmpl $0x32, %edx
jne 0x1c25b
leaq 0x28(%rsp), %rdi
pushq $0x50
popq %rdx
movq %rax, %rsi
callq 0x1b92c
leaq 0x28(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0x4460
movq %r14, %rdi
jmp 0x1c361
movq 0x1ed8e(%rip), %rdi     # 0x3aff0
leaq 0xea75(%rip), %rsi      # 0x2acde
callq 0x43a0
movq %rax, %rdi
callq 0x41e0
jmp 0x1c366
addq $0x138, %rax            # imm = 0x138
leaq 0xe9ac(%rip), %rsi      # 0x2ac34
leaq 0x8(%rsp), %rdi
movq %rax, %rdx
callq 0x1c862
leaq 0xea40(%rip), %rdx      # 0x2acdc
leaq 0x28(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0x179a0
jmp 0x1c344
addq $0x138, %rax            # imm = 0x138
leaq 0xe99c(%rip), %rsi      # 0x2ac59
leaq 0x8(%rsp), %rdi
movq %rax, %rdx
callq 0x1c862
leaq 0xe99b(%rip), %rdx      # 0x2ac6c
leaq 0x28(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0x179a0
jmp 0x1c344
addq $0x138, %rax            # imm = 0x138
leaq 0xe9b9(%rip), %rsi      # 0x2aca8
leaq 0x8(%rsp), %rdi
movq %rax, %rdx
callq 0x1c862
leaq 0xe9d9(%rip), %rdx      # 0x2acdc
leaq 0x28(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0x179a0
jmp 0x1c344
addq $0x138, %rax            # imm = 0x138
leaq 0xe9a2(%rip), %rsi      # 0x2acc3
leaq 0x8(%rsp), %rdi
movq %rax, %rdx
callq 0x1c862
leaq 0xe9a7(%rip), %rdx      # 0x2acdc
leaq 0x28(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0x179a0
leaq 0x28(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0x4460
movq %r14, %rdi
callq 0x41c0
leaq 0x8(%rsp), %rdi
callq 0x41c0
movq %rbx, %rax
addq $0x48, %rsp
popq %rbx
popq %r14
retq
jmp 0x1c37d
jmp 0x1c394
jmp 0x1c394
jmp 0x1c37d
jmp 0x1c37d
jmp 0x1c37d
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x41c0
jmp 0x1c397
jmp 0x1c394
jmp 0x1c394
jmp 0x1c394
jmp 0x1c394
movq %rax, %r14
movq %rbx, %rdi
callq 0x41c0
movq %r14, %rdi
callq 0x4700
nop