Age | Commit message (Collapse) | Author |
|
|
|
Add initial Objective C support
Hi! I made an attempt to support parsing objective c headers. This is very much incomplete,
and likely not quite yet ready for merging, but I thought I'd share the progress so far.
Comments appreciated, I'm still very much a newbie in just about everything related to this change (rust as a language, rust ast, libclang, rust-bindgen), and there were many parts of code I wasn't quite sure about.
Commit message:
It parses interfaces and protocol but ignores base classes,
methods that don’t have arguments, the arguments are currently ignored.
Also you can pass objc class instances to C functions.
Next steps are inheritance/base classes, method signatures,
properties, categories.
Then check with system headers what is missing.
|
|
Re-enable OSX builds on Travis CI
This reverts commit fc38f9b18a9dacc76b7e8a5c8633f0f02289daae.
r? @fitzgen
|
|
This reverts commit fc38f9b18a9dacc76b7e8a5c8633f0f02289daae.
|
|
ir: Fix is_in_non_fully_specialized_template check.
Fixes https://github.com/servo/rust-bindgen/issues/462
r? @upsuper
|
|
Fixes https://github.com/servo/rust-bindgen/issues/462
|
|
It parses interfaces and protocol but ignores base classes, and their
methods which don’t have arguments, the method signature is currently
ignored. Also you can pass objc class instances to C functions.
Next steps are inheritance/base classes, method signatures, properties,
categories. Then check with system headers what is missing.
|
|
ir: Cleanup name duplication in aliases and named types.
It's just dumb.
r? @fitzgen
|
|
It's just dumb.
|
|
codegen: Do the same workaround we do for template parameters with `typename` on aliases for `decltypes` we can't resolve.
r? @fitzgen
|
|
We do the same for template parameters with `typename` on aliases.
This is not great, but it's better than generating invalid code.
|
|
tests: Add an integration test for static arrays.
Turns out they were broken before
https://github.com/servo/rust-bindgen/issues/456.
Let's test it so it doesn't regress.
r? @fitzgen
|
|
These aren't extremely great, since this usually requires extra bookkeeping. But
C allows it, so let's keep the same semantics.
|
|
Turns out they were broken before
https://github.com/servo/rust-bindgen/issues/456.
Let's test it so it doesn't regress.
|
|
treat incomplete array as zero length array
fix issue #455
|
|
|
|
|
|
|
|
fix issue #455
|
|
Remove recently-added assertion that can legitimately trigger
This fails under BaseErrorResult in Stylo builds.
I have no idea right now why that isn't whitelisted (should be, given we're
calling it from TErrorResult's code generation).
Let's disable this pending further investigation since I don't have time to dig
into it right now.
r? @fitzgen
|
|
This fails under BaseErrorResult in Stylo builds.
I have no idea right now why that isn't whitelisted (should be, given we're
calling it from TErrorResult's code generation).
Let's disable this pending further investigation since I don't have time to dig
into it right now.
|
|
codegen: Derive stuff in forward declarations.
So Rust is happy when you use them in template parameters, since the Derive
implementations can't catch this otherwise.
|
|
So Rust is happy when you use them in template parameters, since the Derive
implementations can't catch this otherwise.
|
|
Trace constructors
r? @emilio
|
|
This is a useful debugging tool for us to catch when code generation and
whitelisting have different understandings of the world.
|
|
Fix .gitignore and extra crates' Cargo.lock files
The leading ./ breaks git, apparently. At least, they were still showing up as untracked files when I did git status.
r? @emilio or @Yamakaky
|
|
The leading ./ breaks git, apparently.
|
|
Fixes #447
|
|
codegen: Add an option to skip comment generation.
This is mostly a work around https://github.com/servo/rust-bindgen/issues/426,
until we implement the proper fix.
r? @fitzgen
|
|
Fixes #429
|
|
This is mostly a work around https://github.com/servo/rust-bindgen/issues/426,
until we implement the proper fix.
|
|
Forward declared structs now generate opaque enums
@emilio : I checked the test outputs again, and it seems that these changes are affecting struct *definitions* as well. Hence, I have not committed the test changes yet.
Fixes #62
|
|
|
|
|
|
Update quasi_codegen to 0.29
This avoids compiling two versions of some crates, which hopefully fixes tidy errors for https://github.com/servo/servo/pull/15216.
|
|
This avoids compiling two versions of some crates.
|
|
Version bump, ignore expectations' Cargo.lock
r? @fitzgen or @Yamakaky
|
|
|
|
codegen: Respect original repr for bitfield-like enums, add a constifying variant.
r? @fitzgen
Fixes #430
|
|
Honor and expose the derive_debug option.
Fixes #432
r? @fitzgen
|
|
codegen: Fix typedef re-export in namespaces when bindings aren't at the root.
|
|
Fixes #432
|
|
variant.
|
|
There's just no advantage in doing so.
|
|
The problem with #425 was the following:
We were parsing the methods after reaching the JS::Value definition.
Those methods contained a JSWhyMagic that we hadn't seen, so we parsed it as
being in the JS:: module.
|
|
|
|
|
|
Minor documentation changes
|
|
|
|
Add Cargo.lock file
Fixes #421
r? @emilio or @emilio
|