Skip to content

tjfontaine/node-libclang

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

46 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

node-libclang

node.js module for libclang and parsing c-style source from javascript

AST Traversal

var libclang = require('libclang');

var index = new libclang.index();
var tu = new libclang.translationunit();

tu.fromSource(idx, 'myLibrary.h', ['-I/path/to/my/project']);

tu.cursor().visitChildren(function (parent) {
  switch (this.kind) {
    case libclang.KINDS.CXCursor_FunctionDecl:
      console.log(this.spelling);
      break;
  }
  return libclang.CXChildVisit_Continue;
});

index.dispose();
tu.dispose();

Generate FFI Bindings

This has been moved to its own library npm install -g ffi-generate

See also https://github.com/tjfontaine/node-ffi-generate

Notes

Not all of libclang is wrapped yet, but there's enough for ffi-generate to regenerate the dynamic clang bindings.

The native wrapper isn't completely fleshed out or free of errors. Enough is wrapped to allow for C modules to be successfully generated by lib/generateffi.js.

About

nodejs bindings for libclang

Resources

License

Stars

Watchers

Forks

Packages

No packages published