tree: 198d13815d914a8502c89d6e2820a4f6a80aa733
  1. src/
  2. .clang-format
  3. build.gradle.kts
  4. CMakeLists.txt
  5. README.md
kotlin-native/libllvmext/README.md

libllvmext

Extensions on top of LLVM for Kotlin/Native.

src/main/include contains C headers extending LLVM C API. From these headers Kotlin/JVM bindings are generated in llvmInterop. Kotlin additions should be prefixed with LLVMKotlin.

src/main/cpp contains C++ sources. The sources should follow LLVM coding convention. Kotlin additions should be put inside llvm::kotlin.

To help with code formatting, .clang-format file is placed in this folder. :kotlin-native:libllvmext:clangFormat task can be used to run git-clang-format -f $(git merge-base origin/master HEAD) -- kotlin-native/libllvmext/, which will format only the changed files. The task accepts optional --parent=<branch> (to specify a branch other than origin/master) and --interactive (which adds -p flag to git-clang-format to interactively accept or reject formatting patches).