// File: /workspace/github_c_makefile_star2_O0/mijallen[P]SimpleHTTPServer/lib/libyaml/src/api.c
// Function: yaml_parser_delete
YAML_DECLARE(void)
yaml_parser_delete(yaml_parser_t *parser)
{
    assert(parser); /* Non-NULL parser object expected. */

    BUFFER_DEL(parser, parser->raw_buffer);
    BUFFER_DEL(parser, parser->buffer);
    while (!QUEUE_EMPTY(parser, parser->tokens)) {
        yaml_token_delete(&DEQUEUE(parser, parser->tokens));
    }
    QUEUE_DEL(parser, parser->tokens);
    STACK_DEL(parser, parser->indents);
    STACK_DEL(parser, parser->simple_keys);
    STACK_DEL(parser, parser->states);
    STACK_DEL(parser, parser->marks);
    while (!STACK_EMPTY(parser, parser->tag_directives)) {
        yaml_tag_directive_t tag_directive = POP(parser, parser->tag_directives);
        yaml_free(tag_directive.handle);
        yaml_free(tag_directive.prefix);
    }
    STACK_DEL(parser, parser->tag_directives);

    memset(parser, 0, sizeof(yaml_parser_t));
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
cmpq $0x0, -0x8(%rbp)
je 0x2e65
jmp 0x2e84
leaq 0x281fe(%rip), %rdi     # 0x2b06a
leaq 0x281fe(%rip), %rsi     # 0x2b071
movl $0xd8, %edx
leaq 0x28224(%rip), %rcx     # 0x2b0a3
callq 0x2100
movq -0x8(%rbp), %rax
movq 0xb0(%rax), %rdi
callq 0x2140
movq -0x8(%rbp), %rax
movq $0x0, 0xb8(%rax)
movq -0x8(%rbp), %rax
movq $0x0, 0xc0(%rax)
movq -0x8(%rbp), %rax
movq $0x0, 0xb0(%rax)
movq -0x8(%rbp), %rax
movq 0x88(%rax), %rdi
callq 0x2140
movq -0x8(%rbp), %rax
movq $0x0, 0x90(%rax)
movq -0x8(%rbp), %rax
movq $0x0, 0x98(%rax)
movq -0x8(%rbp), %rax
movq $0x0, 0x88(%rax)
movq -0x8(%rbp), %rax
movq 0x118(%rax), %rax
movq -0x8(%rbp), %rcx
cmpq 0x120(%rcx), %rax
sete %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x2f1f
jmp 0x2f3f
movq -0x8(%rbp), %rax
movq 0x118(%rax), %rdi
movq %rdi, %rcx
addq $0x50, %rcx
movq %rcx, 0x118(%rax)
callq 0x2220
jmp 0x2efe
movq -0x8(%rbp), %rax
movq 0x108(%rax), %rdi
callq 0x2140
movq -0x8(%rbp), %rax
movq $0x0, 0x110(%rax)
movq -0x8(%rbp), %rax
movq $0x0, 0x120(%rax)
movq -0x8(%rbp), %rax
movq $0x0, 0x118(%rax)
movq -0x8(%rbp), %rax
movq $0x0, 0x108(%rax)
movq -0x8(%rbp), %rax
movq 0x138(%rax), %rdi
callq 0x2140
movq -0x8(%rbp), %rax
movq $0x0, 0x140(%rax)
movq -0x8(%rbp), %rax
movq $0x0, 0x148(%rax)
movq -0x8(%rbp), %rax
movq $0x0, 0x138(%rax)
movq -0x8(%rbp), %rax
movq 0x158(%rax), %rdi
callq 0x2140
movq -0x8(%rbp), %rax
movq $0x0, 0x160(%rax)
movq -0x8(%rbp), %rax
movq $0x0, 0x168(%rax)
movq -0x8(%rbp), %rax
movq $0x0, 0x158(%rax)
movq -0x8(%rbp), %rax
movq 0x170(%rax), %rdi
callq 0x2140
movq -0x8(%rbp), %rax
movq $0x0, 0x178(%rax)
movq -0x8(%rbp), %rax
movq $0x0, 0x180(%rax)
movq -0x8(%rbp), %rax
movq $0x0, 0x170(%rax)
movq -0x8(%rbp), %rax
movq 0x190(%rax), %rdi
callq 0x2140
movq -0x8(%rbp), %rax
movq $0x0, 0x198(%rax)
movq -0x8(%rbp), %rax
movq $0x0, 0x1a0(%rax)
movq -0x8(%rbp), %rax
movq $0x0, 0x190(%rax)
movq -0x8(%rbp), %rax
movq 0x1a8(%rax), %rax
movq -0x8(%rbp), %rcx
cmpq 0x1b8(%rcx), %rax
sete %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x30a0
jmp 0x30dd
movq -0x8(%rbp), %rcx
movq 0x1b8(%rcx), %rax
movq %rax, %rdx
addq $-0x10, %rdx
movq %rdx, 0x1b8(%rcx)
movq -0x10(%rax), %rcx
movq %rcx, -0x18(%rbp)
movq -0x8(%rax), %rax
movq %rax, -0x10(%rbp)
movq -0x18(%rbp), %rdi
callq 0x2140
movq -0x10(%rbp), %rdi
callq 0x2140
jmp 0x307f
movq -0x8(%rbp), %rax
movq 0x1a8(%rax), %rdi
callq 0x2140
movq -0x8(%rbp), %rax
movq $0x0, 0x1b0(%rax)
movq -0x8(%rbp), %rax
movq $0x0, 0x1b8(%rax)
movq -0x8(%rbp), %rax
movq $0x0, 0x1a8(%rax)
movq -0x8(%rbp), %rdi
xorl %esi, %esi
movl $0x1e0, %edx            # imm = 0x1E0
callq 0x2120
addq $0x20, %rsp
popq %rbp
retq