summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-02-02Added catch_unwind to catch panic at generator due to missing or incorrect flagsJeffrey Deng
2017-02-02Auto merge of #443 - scoopr:objc, r=emiliobors-servo
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.
2017-02-02Auto merge of #464 - emilio:osx-testing, r=fitzgenbors-servo
Re-enable OSX builds on Travis CI This reverts commit fc38f9b18a9dacc76b7e8a5c8633f0f02289daae. r? @fitzgen
2017-02-02Re-enable OSX builds on Travis CIEmilio Cobos Álvarez
This reverts commit fc38f9b18a9dacc76b7e8a5c8633f0f02289daae.
2017-02-02Auto merge of #466 - emilio:tpl, r=upsuperbors-servo
ir: Fix is_in_non_fully_specialized_template check. Fixes https://github.com/servo/rust-bindgen/issues/462 r? @upsuper
2017-02-02ir: Fix is_in_non_fully_specialized_template check.Emilio Cobos Álvarez
Fixes https://github.com/servo/rust-bindgen/issues/462
2017-01-31Add initial Objective C supportMikko Lehtonen
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.
2017-01-30Auto merge of #461 - emilio:clean-naming, r=fitzgenbors-servo
ir: Cleanup name duplication in aliases and named types. It's just dumb. r? @fitzgen
2017-01-30ir: Cleanup name duplication in aliases and named types.Emilio Cobos Álvarez
It's just dumb.
2017-01-30Auto merge of #384 - emilio:decltype, r=fitzgenbors-servo
codegen: Do the same workaround we do for template parameters with `typename` on aliases for `decltypes` we can't resolve. r? @fitzgen
2017-01-30codegen: ignore aliases for decltypes we can't resolve.Emilio Cobos Álvarez
We do the same for template parameters with `typename` on aliases. This is not great, but it's better than generating invalid code.
2017-01-29Auto merge of #457 - emilio:test-array, r=fitzgenbors-servo
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
2017-01-30Force copy for incomplete arrays.Emilio Cobos Álvarez
These aren't extremely great, since this usually requires extra bookkeeping. But C allows it, so let's keep the same semantics.
2017-01-30tests: Add an integration test for static arrays.Emilio Cobos Álvarez
Turns out they were broken before https://github.com/servo/rust-bindgen/issues/456. Let's test it so it doesn't regress.
2017-01-29Auto merge of #456 - flier:zero-length-array, r=emiliobors-servo
treat incomplete array as zero length array fix issue #455
2017-01-29extract unsafe ZeroedSizeArray traitFlier Lu
2017-01-29more test cases for zero length array and incomplete arrayFlier Lu
2017-01-28generate helper class to access incomplete arrayFlier Lu
2017-01-28treat incomplete array as zero length arrayFlier Lu
fix issue #455
2017-01-27Auto merge of #452 - emilio:dont-assert, r=fitzgenv0.20.5bors-servo
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
2017-01-27Remove recently-added assertion pending investigation.Emilio Cobos Álvarez
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.
2017-01-27Auto merge of #451 - emilio:debug-opaque-types, r=emiliov0.20.4bors-servo
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.
2017-01-27codegen: Derive stuff in forward declarations.Emilio Cobos Álvarez
So Rust is happy when you use them in template parameters, since the Derive implementations can't catch this otherwise.
2017-01-26Auto merge of #448 - fitzgen:trace-constructors, r=emiliobors-servo
Trace constructors r? @emilio
2017-01-26Assert that if we generating code for an item, than it is whitelistedNick Fitzgerald
This is a useful debugging tool for us to catch when code generation and whitelisting have different understandings of the world.
2017-01-26Auto merge of #449 - fitzgen:fix-gitignore-and-cargo-locks, r=emiliobors-servo
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
2017-01-26Fix .gitignore and extra crates' Cargo.lock filesNick Fitzgerald
The leading ./ breaks git, apparently.
2017-01-26Trace constructors in CompInfo's TypeCollector implNick Fitzgerald
Fixes #447
2017-01-26Auto merge of #444 - emilio:no-comments, r=fitzgenbors-servo
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
2017-01-26ir: Allow whitelisting non-recursivelyv0.20.3Emilio Cobos Álvarez
Fixes #429
2017-01-26codegen: Add an option to skip comment generation.Emilio Cobos Álvarez
This is mostly a work around https://github.com/servo/rust-bindgen/issues/426, until we implement the proper fix.
2017-01-26Auto merge of #370 - cynicaldevil:detect-forward, r=emiliobors-servo
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
2017-01-26Added test for forward declared complex typesNikhil Shagrithaya
2017-01-26Forward declared structs now generate opaque enumsNikhil Shagrithaya
2017-01-25Auto merge of #441 - servo:dedup, r=emiliobors-servo
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.
2017-01-25Update quasi_codegen to 0.29Simon Sapin
This avoids compiling two versions of some crates.
2017-01-25Auto merge of #438 - emilio:bump, r=fitzgenbors-servo
Version bump, ignore expectations' Cargo.lock r? @fitzgen or @Yamakaky
2017-01-25Version bump, ignore expectations' Cargo.lockEmilio Cobos Álvarez
2017-01-24Auto merge of #437 - emilio:constify-all-enums, r=fitzgenbors-servo
codegen: Respect original repr for bitfield-like enums, add a constifying variant. r? @fitzgen Fixes #430
2017-01-24Auto merge of #434 - emilio:no-derive-debug, r=fitzgenbors-servo
Honor and expose the derive_debug option. Fixes #432 r? @fitzgen
2017-01-24Auto merge of #436 - emilio:fix-ns-typedef, r=fitzgenbors-servo
codegen: Fix typedef re-export in namespaces when bindings aren't at the root.
2017-01-24Honor and expose the derive_debug option.Emilio Cobos Álvarez
Fixes #432
2017-01-24codegen: Respect original repr for bitfield-like enums, add a constifying ↵Emilio Cobos Álvarez
variant.
2017-01-24codegen: don't generate extra use statements for non-enums.Emilio Cobos Álvarez
There's just no advantage in doing so.
2017-01-24Make it work in rust stable, and incidentally fix #425Emilio Cobos Álvarez
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.
2017-01-24codegen: Factor out some bits of root_import.Emilio Cobos Álvarez
2017-01-24codegen: Fix typedef re-export in namespaces when bindings aren't at the root.Emilio Cobos Álvarez
2017-01-24Auto merge of #435 - jethrogb:patch-1, r=emiliobors-servo
Minor documentation changes
2017-01-24Minor documentation changesjethrogb
2017-01-23Auto merge of #423 - fitzgen:cargo-lock, r=emiliobors-servo
Add Cargo.lock file Fixes #421 r? @emilio or @emilio