Skip to content

Commit

Permalink
Add bindings for setting grid nsTArrays
Browse files Browse the repository at this point in the history
  • Loading branch information
wafflespeanut committed May 18, 2017
1 parent 10badb3 commit 3011c7c
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 3 deletions.
11 changes: 9 additions & 2 deletions components/style/build_gecko.rs
Expand Up @@ -662,7 +662,8 @@ mod bindings {
.header(add_include("mozilla/ServoBindings.h"))
.hide_type("nsACString_internal")
.hide_type("nsAString_internal")
.raw_line("pub use nsstring::{nsACString, nsAString, nsString};")
.raw_line("pub use nsstring::{nsACString, nsAString, nsString, nsStringRepr};")
.raw_line("use gecko_bindings::structs::nsTArray;")
.raw_line("type nsACString_internal = nsACString;")
.raw_line("type nsAString_internal = nsAString;")
.whitelisted_function("Servo_.*")
Expand Down Expand Up @@ -859,7 +860,13 @@ mod bindings {
// type with zero_size_type. If we ever introduce immutable borrow types
// which _do_ need to be opaque, we'll need a separate mode.
}
write_binding_file(builder, BINDINGS_FILE, &Vec::new());
let fixups = vec![
Fixup { // hack for gecko-owned string
pat: "<nsString".into(),
rep: "<nsStringRepr".into()
},
];
write_binding_file(builder, BINDINGS_FILE, &fixups);
}

fn generate_atoms() {
Expand Down
12 changes: 11 additions & 1 deletion components/style/gecko/generated/bindings.rs
@@ -1,6 +1,7 @@
/* automatically generated by rust-bindgen */

pub use nsstring::{nsACString, nsAString, nsString};
pub use nsstring::{nsACString, nsAString, nsString, nsStringRepr};
use gecko_bindings::structs::nsTArray;
type nsACString_internal = nsACString;
type nsAString_internal = nsAString;
use gecko_bindings::structs::mozilla::css::GridTemplateAreasValue;
Expand Down Expand Up @@ -943,6 +944,15 @@ extern "C" {
extern "C" {
pub fn Gecko_DropElementSnapshot(snapshot: ServoElementSnapshotOwned);
}
extern "C" {
pub fn Gecko_ResizeTArrayForStrings(array: *mut nsTArray<nsStringRepr>,
length: u32);
}
extern "C" {
pub fn Gecko_SetStyleGridTemplateArrayLengths(grid_template:
*mut nsStyleGridTemplate,
track_sizes: u32);
}
extern "C" {
pub fn Gecko_CopyStyleGridTemplateValues(grid_template:
*mut nsStyleGridTemplate,
Expand Down

0 comments on commit 3011c7c

Please sign in to comment.