// File: /workspace/github_c_makefile_star2_O2/justy989[P]ce/ce_app.c
// Function: determine_buffer_syntax
void determine_buffer_syntax(CeBuffer_t* buffer){
     CeAppBufferData_t* buffer_data = buffer->app_data;

     if(string_ends_with(buffer->name, ".c") ||
        string_ends_with(buffer->name, ".h") ||
        string_ends_with(buffer->name, ".js")){
          buffer_data->syntax_function = ce_syntax_highlight_c;
     }else if(string_ends_with(buffer->name, ".cpp") ||
              string_ends_with(buffer->name, ".hpp") ||
              string_ends_with(buffer->name, ".hh") ||
              string_ends_with(buffer->name, ".cc")){
          buffer_data->syntax_function = ce_syntax_highlight_cpp;
     }else if(string_ends_with(buffer->name, ".py")){
          buffer_data->syntax_function = ce_syntax_highlight_python;
     }else if(string_ends_with(buffer->name, ".java")){
          buffer_data->syntax_function = ce_syntax_highlight_java;
     }else if(string_ends_with(buffer->name, ".sh")){
          buffer_data->syntax_function = ce_syntax_highlight_bash;
     }else if(string_ends_with(buffer->name, ".cfg")){
          buffer_data->syntax_function = ce_syntax_highlight_config;
     }else if(string_ends_with(buffer->name, ".diff") ||
              string_ends_with(buffer->name, ".patch") ||
              string_ends_with(buffer->name, "COMMIT_EDITMSG")){
          buffer_data->syntax_function = ce_syntax_highlight_diff;
     }else{
          buffer_data->syntax_function = ce_syntax_highlight_plain;
     }
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
movq 0x10(%rdi), %rbx
movq 0x58(%rdi), %r14
leaq 0x19557(%rip), %rsi     # 0x2a67a
movq %rbx, %rdi
callq 0x112c8
leaq 0xce8a(%rip), %r15      # 0x1dfbc
testb %al, %al
jne 0x11291
leaq 0x19726(%rip), %rsi     # 0x2a867
movq %rbx, %rdi
callq 0x112c8
testb %al, %al
jne 0x11291
leaq 0x19712(%rip), %rsi     # 0x2a86a
movq %rbx, %rdi
callq 0x112c8
testb %al, %al
jne 0x11291
leaq 0x196ff(%rip), %rsi     # 0x2a86e
movq %rbx, %rdi
callq 0x112c8
leaq 0xd7f7(%rip), %r15      # 0x1e975
testb %al, %al
jne 0x11291
leaq 0x196e6(%rip), %rsi     # 0x2a873
movq %rbx, %rdi
callq 0x112c8
testb %al, %al
jne 0x11291
leaq 0x196d4(%rip), %rsi     # 0x2a878
movq %rbx, %rdi
callq 0x112c8
testb %al, %al
jne 0x11291
leaq 0x196c1(%rip), %rsi     # 0x2a87c
movq %rbx, %rdi
callq 0x112c8
testb %al, %al
jne 0x11291
leaq 0x196ae(%rip), %rsi     # 0x2a880
movq %rbx, %rdi
callq 0x112c8
testb %al, %al
je 0x111ea
leaq 0xe23a(%rip), %r15      # 0x1f41f
jmp 0x11291
leaq 0x19693(%rip), %rsi     # 0x2a884
movq %rbx, %rdi
callq 0x112c8
testb %al, %al
je 0x11209
leaq 0xdd7b(%rip), %r15      # 0x1ef7f
jmp 0x11291
leaq 0x1967a(%rip), %rsi     # 0x2a88a
movq %rbx, %rdi
callq 0x112c8
testb %al, %al
je 0x11225
leaq 0xe7aa(%rip), %r15      # 0x1f9cd
jmp 0x11291
leaq 0x19662(%rip), %rsi     # 0x2a88e
movq %rbx, %rdi
callq 0x112c8
testb %al, %al
je 0x11241
leaq 0xeafb(%rip), %r15      # 0x1fd3a
jmp 0x11291
leaq 0x1964b(%rip), %rsi     # 0x2a893
movq %rbx, %rdi
callq 0x112c8
leaq 0xee50(%rip), %r15      # 0x200a7
testb %al, %al
jne 0x11291
leaq 0x19637(%rip), %rsi     # 0x2a899
movq %rbx, %rdi
callq 0x112c8
testb %al, %al
jne 0x11291
leaq 0x1962b(%rip), %rsi     # 0x2a8a0
movq %rbx, %rdi
callq 0x112c8
testb %al, %al
je 0x1128a
leaq 0xee1f(%rip), %r15      # 0x200a7
jmp 0x11291
leaq 0xf054(%rip), %r15      # 0x202e5
movq %r15, 0x600(%r14)
popq %rbx
popq %r14
popq %r15
retq