gecko-dev/modules
Nicholas Nethercote 12640bca82 Bug 1563555 - Generate static pref getters usable from Rust code. r=glandium
This patch introduces a new Rust crate called `static_prefs`.

It also changes generate_static_pref_list.py to generate two new files.

- StaticPrefsCGetters.cpp: contains C getters, which are just wrappers around
  the C++ getters. This is included into Preferences.cpp.

- static_prefs.rs: contains declarations for the C getters, plus the `pref!`
  macro which provides nice syntax for calling the C getters. This is included
  into static_prefs/src/lib.rs.

The new code is only generated for prefs marked with the new `rust` field in
the YAML. It's opt-in because there's no point generating additional code for
900+ static prefs when only about 20 are currently used from Rust.

This patch only marks a single pref (`browser.display.document_color_use`) with
`rust: true`. That pref isn't accessed from Rust code in this patch, but it's
necessary because the generated Rust code is invalid if there are zero
Rust-accessed prefs. (The next patch will access that pref and others from Rust
code.

Differential Revision: https://phabricator.services.mozilla.com/D40791

--HG--
extra : moz-landing-system : lando
2019-08-07 05:16:55 +00:00
..
brotli Bug 1512504 - Remove support for MSVC. r=froydnj 2019-02-14 21:45:27 +00:00
fdlibm Bug 1564117 - Part 2: Allow to reimport a specific fdlibm commit. r=arai 2019-07-08 16:52:47 +00:00
freetype2 Bug 1562790 - Update to FreeType 2.10.1. r=jfkthame 2019-07-02 16:31:09 +00:00
libjar Backed out changeset b197ca57677a (bug 1558915) for build bustages. CLOSED TREE 2019-08-07 01:04:43 +03:00
libmar Bug 1562952 - Always build signmar when mar is built. r=nalexander 2019-07-16 19:01:03 +00:00
libpref Bug 1563555 - Generate static pref getters usable from Rust code. r=glandium 2019-08-07 05:16:55 +00:00
woff2
xz-embedded
zlib Bug 1553363 - Generalize the *_impl goop for allocation functions in mozglue. r=froydnj 2019-05-29 22:49:42 +00:00
moz.build