// File: /workspace/github_cpp_makefile_star2_O3/mhe[P]raytracerframework_cpp/yaml/scantoken.cpp
// Function: YAML::Scanner::ScanQuotedScalar()
void Scanner::ScanQuotedScalar()
	{
		std::string scalar;

		// eat single or double quote
		char quote = INPUT.get();
		bool single = (quote == '\'');

		// setup the scanning parameters
		ScanScalarParams params;
		params.end = (single ? RegEx(quote) && !Exp::EscSingleQuote : RegEx(quote));
		params.eatEnd = true;
		params.escape = (single ? '\'' : '\\');
		params.indent = 0;
		params.fold = true;
		params.eatLeadingWhitespace = true;
		params.trimTrailingSpaces = false;
		params.chomp = CLIP;
		params.onDocIndicator = THROW;

		// insert a potential simple key
		if(m_simpleKeyAllowed)
			InsertSimpleKey();

		int line = INPUT.line, column = INPUT.column;
		scalar = ScanScalar(INPUT, params);
		m_simpleKeyAllowed = false;

		Token token(TT_SCALAR, line, column);
		token.value = scalar;
		m_tokens.push(token);
	}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x118, %rsp            # imm = 0x118
movq %rdi, %rbx
leaq -0x38(%rbp), %r15
movq %r15, -0x10(%r15)
movq $0x0, -0x8(%r15)
movb $0x0, (%r15)
callq 0x2f2dc
movl %eax, %r14d
leaq -0xe0(%rbp), %rdi
callq 0x28b4e
xorl %eax, %eax
movb %al, -0xb0(%rbp)
movq %rax, -0xac(%rbp)
movb %al, -0xa4(%rbp)
movq %rax, -0xa0(%rbp)
movq %rax, -0x9b(%rbp)
cmpb $0x27, %r14b
jne 0x2d786
leaq -0x140(%rbp), %rdi
movl $0x27, %esi
callq 0x28b8e
leaq 0x13462(%rip), %rsi     # 0x40bc0
leaq -0x110(%rbp), %rdi
callq 0x28ec9
leaq -0x90(%rbp), %rdi
leaq -0x140(%rbp), %rsi
leaq -0x110(%rbp), %rdx
callq 0x28f88
jmp 0x2d796
movsbl %r14b, %esi
leaq -0x90(%rbp), %rdi
callq 0x28b8e
leaq -0xe0(%rbp), %rdi
leaq -0x90(%rbp), %rsi
callq 0x28d10
leaq -0x90(%rbp), %rdi
callq 0x28ce6
movb $0x5c, %al
cmpb $0x27, %r14b
jne 0x2d7d7
leaq -0x110(%rbp), %rdi
callq 0x28ce6
leaq -0x140(%rbp), %rdi
callq 0x28ce6
movb $0x27, %al
movb $0x1, %cl
movb %cl, -0xb0(%rbp)
movb %al, -0xa6(%rbp)
movl $0x0, -0xac(%rbp)
movw $0x1, -0xa5(%rbp)
movb %cl, -0xa7(%rbp)
movabsq $0x200000000, %rax      # imm = 0x200000000
movq %rax, -0xa0(%rbp)
cmpb %cl, 0x62(%rbx)
jne 0x2d81c
movq %rbx, %rdi
callq 0x2ed96
movl 0x8(%rbx), %r12d
movl 0xc(%rbx), %r13d
leaq -0x90(%rbp), %rdi
leaq -0xe0(%rbp), %rdx
movq %rbx, %rsi
callq 0x2c05c
leaq -0x48(%rbp), %rdi
leaq -0x90(%rbp), %r14
movq %r14, %rsi
callq 0x43b0
movq (%r14), %rdi
leaq -0x80(%rbp), %rax
cmpq %rax, %rdi
je 0x2d865
movq -0x80(%rbp), %rsi
incq %rsi
callq 0x42d0
xorl %eax, %eax
movb %al, 0x62(%rbx)
movabsq $0x1100000000, %rcx     # imm = 0x1100000000
leaq -0x80(%rbp), %rdi
movq %rcx, -0x10(%rdi)
movl %r12d, -0x8(%rdi)
movl %r13d, -0x4(%rdi)
leaq -0x70(%rbp), %r14
movq %r14, -0x10(%r14)
movq %rax, -0x8(%r14)
movb %al, (%r14)
xorps %xmm0, %xmm0
movups %xmm0, 0x10(%r14)
movq %rax, 0x20(%r14)
leaq -0x48(%rbp), %rsi
callq 0x4160
addq $0x10, %rbx
leaq -0x90(%rbp), %rsi
movq %rbx, %rdi
callq 0x2e22e
leaq -0x60(%rbp), %rbx
movq %rbx, %rdi
callq 0x2670a
movq -0x20(%rbx), %rdi
cmpq %r14, %rdi
je 0x2d8dc
movq -0x70(%rbp), %rsi
incq %rsi
callq 0x42d0
leaq -0xe0(%rbp), %rdi
callq 0x28ce6
movq -0x48(%rbp), %rdi
cmpq %r15, %rdi
je 0x2d8fd
movq -0x38(%rbp), %rsi
incq %rsi
callq 0x42d0
addq $0x118, %rsp            # imm = 0x118
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x2d918
movq %rax, %rbx
jmp 0x2d943
jmp 0x2d918
movq %rax, %rbx
jmp 0x2d967
movq %rax, %rbx
leaq -0x90(%rbp), %rdi
callq 0x28ce6
jmp 0x2d931
movq %rax, %rbx
cmpb $0x27, %r14b
jne 0x2d967
leaq -0x110(%rbp), %rdi
callq 0x28ce6
leaq -0x140(%rbp), %rdi
callq 0x28ce6
jmp 0x2d967
jmp 0x2d953
movq %rax, %rbx
jmp 0x2d973
movq %rax, %rbx
leaq -0x90(%rbp), %rdi
callq 0x264de
leaq -0xe0(%rbp), %rdi
callq 0x28ce6
movq -0x48(%rbp), %rdi
cmpq %r15, %rdi
je 0x2d988
movq -0x38(%rbp), %rsi
incq %rsi
callq 0x42d0
movq %rbx, %rdi
callq 0x4550