Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/go-clang/clang-v11

Go bindings for Clang's C API v11
https://github.com/go-clang/clang-v11

clang go libclang

Last synced: 27 days ago
JSON representation

Go bindings for Clang's C API v11

Awesome Lists containing this project

README

        

# go-clang/clang-v11

[![PkgGoDev](https://pkg.go.dev/badge/github.com/go-clang/clang-v11)](https://pkg.go.dev/github.com/go-clang/clang-v11)
[![GitHub Workflow](https://img.shields.io/github/workflow/status/go-clang/clang-v11/Test/main?label=test&logo=github&style=flat-square)](https://github.com/go-clang/clang-v11/actions)

Native Go bindings for Clang v11 C API.

## Install/Update

```bash
CGO_LDFLAGS="-L`llvm-config --libdir`" \
go install github.com/go-clang/clang-v11/...
```

## Usage

An example on how to use the AST visitor of the Clang API can be found in [cmd/go-clang-dump/main.go](cmd/go-clang-dump/main.go)

## I need bindings for a different Clang version

The Go bindings are placed in their own repositories to provide the correct bindings for the corresponding Clang version. A list of supported versions can be found in [go-clang/gen's README](https://github.com/go-clang/gen#where-are-the-bindings).

## I found a bug/missing a feature in go-clang

We are using the issue tracker of the `go-clang/gen` repository. Please go through the [open issues](https://github.com/go-clang/gen/issues) in the tracker first. If you cannot find your request just open up a [new issue](https://github.com/go-clang/gen/issues/new).

## How is this binding generated?

The [go-clang/gen](https://github.com/go-clang/gen) repository is used to automatically generate this binding.

# License

This project, like all go-clang projects, is licensed under a BSD-3 license which can be found in the [LICENSE file](https://github.com/go-clang/license/blob/master/LICENSE) in [go-clang's license repository](https://github.com/go-clang/license)