// File: yeonnic[P]solparser/././argx.hpp
// Function: args::FlagBase::GetNameString[abi:cxx11](args::HelpParams const&) const
virtual std::string GetNameString(const HelpParams &params) const override
            {
                const std::string postfix = !params.showValueName || NumberOfArguments() == 0 ? std::string() : Name();
                std::string flags;
                const auto flagStrings = matcher.GetFlagStrings();
                const bool useValueNameOnce = flagStrings.size() == 1 ? false : params.useValueNameOnce;
                for (auto it = flagStrings.begin(); it != flagStrings.end(); ++it)
                {
                    auto &flag = *it;
                    if (it != flagStrings.begin())
                    {
                        flags += ", ";
                    }

                    flags += flag.isShort ? params.shortPrefix : params.longPrefix;
                    flags += flag.str();

                    if (!postfix.empty() && (!useValueNameOnce || it + 1 == flagStrings.end()))
                    {
                        flags += flag.isShort ? params.shortSeparator : params.longSeparator;
                        flags += params.valueOpen + postfix + params.valueClose;
                    }
                }

                return flags;
            }

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x150, %rsp            # imm = 0x150
movq %rdi, -0x130(%rbp)
movq %rdi, %rax
movq %rax, -0x128(%rbp)
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x120(%rbp)
movq -0x18(%rbp), %rax
testb $0x1, 0x219(%rax)
je 0x1e6c8
movq -0x120(%rbp), %rdi
movq (%rdi), %rax
callq *0x98(%rax)
movq %rax, -0x48(%rbp)
movq %rdx, -0x40(%rbp)
leaq -0x58(%rbp), %rdi
xorl %eax, %eax
movl %eax, %esi
callq 0x210f0
leaq -0x48(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x210b0
testb $0x1, %al
jne 0x1e6c8
jmp 0x1e6d3
leaq -0x38(%rbp), %rdi
callq 0x6510
jmp 0x1e6e7
movq -0x120(%rbp), %rsi
movq (%rsi), %rax
leaq -0x38(%rbp), %rdi
callq *0x90(%rax)
movq -0x130(%rbp), %rdi
movb $0x0, -0x59(%rbp)
callq 0x6510
movq -0x120(%rbp), %rsi
addq $0xa0, %rsi
leaq -0x78(%rbp), %rdi
callq 0x21680
jmp 0x1e710
leaq -0x78(%rbp), %rdi
callq 0x217f0
cmpq $0x1, %rax
jne 0x1e729
xorl %eax, %eax
movb %al, -0x131(%rbp)
jmp 0x1e739
movq -0x18(%rbp), %rax
movb 0x218(%rax), %al
movb %al, -0x131(%rbp)
movb -0x131(%rbp), %al
andb $0x1, %al
movb %al, -0x85(%rbp)
leaq -0x78(%rbp), %rdi
callq 0x21820
movq %rax, -0x90(%rbp)
leaq -0x78(%rbp), %rdi
callq 0x21890
movq %rax, -0x98(%rbp)
leaq -0x90(%rbp), %rdi
leaq -0x98(%rbp), %rsi
callq 0x21850
testb $0x1, %al
jne 0x1e783
jmp 0x1ea13
leaq -0x90(%rbp), %rdi
callq 0x218c0
movq %rax, -0xa0(%rbp)
leaq -0x78(%rbp), %rdi
callq 0x21820
movq %rax, -0xa8(%rbp)
leaq -0x90(%rbp), %rdi
leaq -0xa8(%rbp), %rsi
callq 0x21850
testb $0x1, %al
jne 0x1e7bf
jmp 0x1e7fe
movq -0x130(%rbp), %rdi
leaq 0x188bd(%rip), %rsi     # 0x3708a
callq 0x6310
jmp 0x1e7d4
jmp 0x1e7fe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
jmp 0x1ea58
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
jmp 0x1ea28
movq -0xa0(%rbp), %rax
testb $0x1, (%rax)
je 0x1e81b
movq -0x18(%rbp), %rax
addq $0x28, %rax
movq %rax, -0x140(%rbp)
jmp 0x1e82a
movq -0x18(%rbp), %rax
addq $0x48, %rax
movq %rax, -0x140(%rbp)
movq -0x130(%rbp), %rdi
movq -0x140(%rbp), %rsi
callq 0x6450
jmp 0x1e83f
movq -0xa0(%rbp), %rsi
leaq -0xc8(%rbp), %rdi
callq 0x20760
jmp 0x1e854
movq -0x130(%rbp), %rdi
leaq -0xc8(%rbp), %rsi
callq 0x6450
jmp 0x1e869
leaq -0xc8(%rbp), %rdi
callq 0x61f0
leaq -0x38(%rbp), %rdi
callq 0x65c0
movb %al, %cl
xorl %eax, %eax
testb $0x1, %cl
movb %al, -0x141(%rbp)
jne 0x1e8eb
movb $0x1, %al
testb $0x1, -0x85(%rbp)
movb %al, -0x142(%rbp)
je 0x1e8df
leaq -0x90(%rbp), %rdi
movl $0x1, %esi
callq 0x21920
movq %rax, -0xd0(%rbp)
leaq -0x78(%rbp), %rdi
callq 0x21890
movq %rax, -0xd8(%rbp)
leaq -0xd0(%rbp), %rdi
leaq -0xd8(%rbp), %rsi
callq 0x218e0
movb %al, -0x142(%rbp)
movb -0x142(%rbp), %al
movb %al, -0x141(%rbp)
movb -0x141(%rbp), %al
testb $0x1, %al
jne 0x1e8fa
jmp 0x1ea00
movq -0xa0(%rbp), %rax
testb $0x1, (%rax)
je 0x1e917
movq -0x18(%rbp), %rax
addq $0x68, %rax
movq %rax, -0x150(%rbp)
jmp 0x1e928
movq -0x18(%rbp), %rax
addq $0x88, %rax
movq %rax, -0x150(%rbp)
movq -0x130(%rbp), %rdi
movq -0x150(%rbp), %rsi
callq 0x6450
jmp 0x1e93d
movq -0x18(%rbp), %rsi
addq $0x220, %rsi            # imm = 0x220
leaq -0x118(%rbp), %rdi
leaq -0x38(%rbp), %rdx
callq 0x203a0
jmp 0x1e95a
movq -0x18(%rbp), %rdx
addq $0x240, %rdx            # imm = 0x240
leaq -0xf8(%rbp), %rdi
leaq -0x118(%rbp), %rsi
callq 0x211d0
jmp 0x1e97a
movq -0x130(%rbp), %rdi
leaq -0xf8(%rbp), %rsi
callq 0x6450
jmp 0x1e98f
leaq -0xf8(%rbp), %rdi
callq 0x61f0
leaq -0x118(%rbp), %rdi
callq 0x61f0
jmp 0x1ea00
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
leaq -0xc8(%rbp), %rdi
callq 0x61f0
jmp 0x1ea28
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
jmp 0x1e9f2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
leaq -0xf8(%rbp), %rdi
callq 0x61f0
leaq -0x118(%rbp), %rdi
callq 0x61f0
jmp 0x1ea28
jmp 0x1ea02
leaq -0x90(%rbp), %rdi
callq 0x21960
jmp 0x1e757
movb $0x1, -0x59(%rbp)
leaq -0x78(%rbp), %rdi
callq 0x21980
testb $0x1, -0x59(%rbp)
jne 0x1ea3f
jmp 0x1ea33
leaq -0x78(%rbp), %rdi
callq 0x21980
jmp 0x1ea58
movq -0x130(%rbp), %rdi
callq 0x61f0
leaq -0x38(%rbp), %rdi
callq 0x61f0
movq -0x128(%rbp), %rax
addq $0x150, %rsp            # imm = 0x150
popq %rbp
retq
movq -0x130(%rbp), %rdi
callq 0x61f0
leaq -0x38(%rbp), %rdi
callq 0x61f0
movq -0x80(%rbp), %rdi
callq 0x6620
nopw %cs:(%rax,%rax)