summaryrefslogtreecommitdiff
path: root/libbindgen
AgeCommit message (Collapse)Author
2017-01-23Move new test files out of libbindgenNick Fitzgerald
2017-01-23Trace methods in CompInfo's TypeCollector implNick Fitzgerald
Fixes #410
2017-01-23Unify under the `bindgen` name.Emilio Cobos Álvarez
2017-01-22Auto merge of #413 - emilio:debug-array-unaligned, r=fitzgenbors-servo
codegen: Avoid generating invalid Rust code when a struct is not properly aligned. r? @fitzgen cc #412
2017-01-21codegen: Avoid generating invalid Rust code when a struct is not properly ↵Emilio Cobos Álvarez
aligned.
2017-01-19Auto merge of #403 - emilio:variadic-fn, r=fitzgenbors-servo
codegen: Don't implement variadic methods. Fixes #402 r? @fitzgen
2017-01-19Auto merge of #401 - emilio:function-checks, r=fitzgenbors-servo
ir: Unify function checks so they apply to non-methods. Fixes #399 r? @fitzgen
2017-01-19Auto merge of #397 - emilio:trace-vars, r=fitzgenbors-servo
ir: Trace types across vars. r? @fitzgen
2017-01-19ir: Fix the assert no danging items traversal to avoid getting hung on a ↵Emilio Cobos Álvarez
cyclic reference caused by inner_const.hpp.
2017-01-19Auto merge of #396 - emilio:enum-alias, r=fitzgenbors-servo
codegen: Prefer use instead of type aliases. r? @fitzgen
2017-01-18codegen: Don't implement variadic methods.Emilio Cobos Álvarez
Fixes #402
2017-01-16ir: Unify function checks so they apply to non-methods.Emilio Cobos Álvarez
2017-01-16Update env_logger.Ms2ger
2017-01-15ir: Trace types across vars.Emilio Cobos Álvarez
2017-01-13codegen: Fix use generation for non-root module.Emilio Cobos Álvarez
2017-01-13codegen: Prefer use instead of type aliases.Emilio Cobos Álvarez
2017-01-13Update aster and syntex.Emilio Cobos Álvarez
2017-01-11ir: Handle inline namespaces.Emilio Cobos Álvarez
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
2017-01-11Test opaque tracing through function arguments and pointer types.Emilio Cobos Álvarez
2017-01-11codegen: Don't make auto-opaque types without template params.Emilio Cobos Álvarez
2017-01-11ir: Trace through some types while collecting automatically.Emilio Cobos Álvarez
This makes sense because there's no special meaning for some of them to be opaque.
2017-01-11ir: Define a set of items we want to collect types through unconditionally.Emilio Cobos Álvarez
2017-01-11Auto merge of #393 - emilio:enum-const-api, r=upsuperbors-servo
Provide an API to constify enum variants. r? @upsuper
2017-01-11ir: Support hiding enum variants.Emilio Cobos Álvarez
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
2017-01-11codegen: Constify enum variants.Emilio Cobos Álvarez
2017-01-10Auto merge of #383 - emilio:virtual-base, r=fitzgenbors-servo
Tidy up and test virtual inheritance handling. Done while investigating #380. r? @fitzgen
2017-01-10ir: Parse whether we should constify an enum variant.Emilio Cobos Álvarez
2017-01-10ir: Add an annotation API to constify enum variants.Emilio Cobos Álvarez
2017-01-10chooser: Add a programmatic API for choosing whether to constify an enum ↵Emilio Cobos Álvarez
variant.
2017-01-10ir: Add a helper to the context to access the user-provided type chooser.Emilio Cobos Álvarez
2017-01-09Bump to 0.1.6Manish Goregaokar
2017-01-09ir: Evaluate constant strings too.Emilio Cobos Álvarez
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
2017-01-06Update to regex 0.2; use regex::RegexSet for matchingJeremy Fitzhardinge
Rather than implementing a private RegexSet, implement it in terms of regex::RegexSet, which should be more efficient. Retain the existing RegexSet module and just reimplement its internals, in order to preserve the external API.
2017-01-06tests: Add virtual base tests.Emilio Cobos Álvarez
2017-01-06codegen: Properly handle virtual bases.Emilio Cobos Álvarez
2017-01-06ir: More appropriately track whether we're inheriting virtually.Emilio Cobos Álvarez
2017-01-06ir: Change our representation of base types so they also have a base kind.Emilio Cobos Álvarez
This still doesn't change behavior, but it's nice to split it for easier review. Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
2017-01-05Allow regexps for --blacklist_type and --opaque_typeJeremy Fitzhardinge
2016-12-30Auto merge of #374 - fitzgen:derive-debug-with-array-too-big, r=emiliobors-servo
Derive debug with array too big See the first commit's message for details, second commit is just `rustfmt`. r? @emilio Not quite sure whether the `Opaque` struct is fully motivated... it seems like it would be useful later on in codegen, but might not be pulling its own weight without more usage...
2016-12-30Relax opaque layout trait deriving and take alignment into accountNick Fitzgerald
2016-12-29Run `cargo fmt` on `libbindgen`Nick Fitzgerald
2016-12-29Do not derive Copy/Debug for some opaque typesNick Fitzgerald
When we treat a type as opaque, either because it is explicitly annotated as such or because it is a template that has a non-type parameter, we need to check if the size is larger than RUST_DERIVE_IN_ARRAY_LIMIT. Performing this check requires information that is up the stack, in the `Item` rather than in the `CompInfo` or `Type`. Therefore, I introduced two traits to encapsulate whether a thing can derive `Debug` and `Copy` (the `CanDeriveDebug` and `CanDeriveCopy` traits, respectively) and implemented them for ALL THE THINGS. This allowes us to perform our various checks at the level where we have access to the necessary info, and to let sub-levels do their own checks with their sub-info. Fixes #372.
2016-12-29Auto merge of #371 - emilio:pointer, r=fitzgenbors-servo
codegen: Use the canonical type to determine whether we should conver… …t to a pointer an argument. Fixes https://github.com/Yamakaky/rust-bindgen/issues/407 r? @fitzgen
2016-12-29codegen: Use the canonical type to determine whether we should convert to a ↵Emilio Cobos Álvarez
pointer an argument. Fixes https://github.com/Yamakaky/rust-bindgen/issues/407
2016-12-29Replace all non-fatal `error!`s with `warn!`sTetsuharu OHZEKI
2016-12-28ir: More generic handling of non-deductible auto types.Emilio Cobos Álvarez
2016-12-28ir: Skip function template earlier.Xidorn Quan
This should fix #364.
2016-12-23Add test from #358.Emilio Cobos Álvarez
2016-12-23libbindgen: Bump version for crates.ioEmilio Cobos Álvarez
2016-12-23lib: Remove unused libc dependency.Emilio Cobos Álvarez