Browse Source

Update UsersManual.md

pull/1612/head
João Matos 4 years ago committed by GitHub
parent
commit
359cc90a49
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 37
      docs/UsersManual.md

37
docs/UsersManual.md

@ -23,17 +23,40 @@ SWIG. So how is it different from SWIG? @@ -23,17 +23,40 @@ SWIG. So how is it different from SWIG?
* Strongly-typed customization APIs
* Can be used as a library
# 2. Targets
# 2. Generator Backends
The backend of the generator is abstracted and it can target different .NET
binding technologies:
The backend of the bindings generator is abstracted and can support several different targets.
It can be changed by using the `Options.GeneratorKind` option.
For .NET we support these bindings technologies:
- C# (P/Invoke)
- C++/CLI
We have recently introduced an option which makes Clang look up MSVC headers.
If it works well, we're going to make it the default in our next release.
Its only disadvantage is the ability to select a specific version of MSVC.
There is also experimental support for these JavaScript-related targets:
- N-API (Node.js)
- QuickJS
- TypeScript
# 3. Native Targets
The parser supports several different targets and needs to be correctly configured to match the compiled native code.
This can be done by using the `ParserOptions.TargetTriple` option.
These triples follow the same format as LLVM/Clang, which is documented [here](https://clang.llvm.org/docs/CrossCompilation.html#target-triple).
Here are a few examples for the most common variants:
- `i686-pc-win32-msvc`
- `x86_64-pc-win32-msvc`
- `i686-linux-gnu`
- `x86_64-linux-gnu`
- `i686-apple-darwin`
- `x86_64-apple-darwin`
# 3. C/C++ language features
@ -449,4 +472,4 @@ class __declspec(dllexport) ExposedClass @@ -449,4 +472,4 @@ class __declspec(dllexport) ExposedClass
{
// class definition
}
```
```

Loading…
Cancel
Save