HEX
Server: Apache/2.4.41 (Ubuntu)
System: Linux ip-172-31-42-149 5.15.0-1084-aws #91~20.04.1-Ubuntu SMP Fri May 2 07:00:04 UTC 2025 aarch64
User: ubuntu (1000)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: //home/ubuntu/neovim/.deps/build/src/treesitter/test/profile/heap.cc
#include <fstream>
#include <string>
#include <cstdlib>
#include <tree_sitter/api.h>

extern "C" {
#include "javascript/src/parser.c"
#include "javascript/src/scanner.c"
}

#define LANGUAGE tree_sitter_javascript
#define SOURCE_PATH "javascript/examples/jquery.js"

int main() {
  TSParser *parser = ts_parser_new();
  if (!ts_parser_set_language(parser, LANGUAGE())) {
    fprintf(stderr, "Invalid language\n");
    exit(1);
  }

  const char *source_path = GRAMMARS_DIR SOURCE_PATH;

  printf("Parsing %s\n", source_path);

  std::ifstream source_file(source_path);
  if (!source_file.good()) {
    fprintf(stderr, "Invalid source path %s\n", source_path);
    exit(1);
  }

  std::string source_code(
    (std::istreambuf_iterator<char>(source_file)),
    std::istreambuf_iterator<char>()
  );

  TSTree *tree = ts_parser_parse_string(
    parser,
    NULL,
    source_code.c_str(),
    source_code.size()
  );
}