Skip to content

Commit 0090d16

Browse files
author
Richard Dodd
committed
Switch to serde for build script
1 parent bb072d5 commit 0090d16

File tree

2 files changed

+11
-8
lines changed

2 files changed

+11
-8
lines changed

markup5ever/Cargo.toml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,5 +25,7 @@ heapsize_derive = { version = "0.1", optional = true }
2525
[build-dependencies]
2626
string_cache_codegen = "0.4"
2727
phf_codegen = "0.7.3"
28-
rustc-serialize = "0.3.15"
28+
serde = "1.0"
29+
serde_derive = "1.0"
30+
serde_json = "1.0"
2931

markup5ever/build.rs

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,11 @@
99

1010
extern crate string_cache_codegen;
1111
extern crate phf_codegen;
12-
extern crate rustc_serialize;
12+
#[macro_use]
13+
extern crate serde_derive;
14+
extern crate serde;
15+
extern crate serde_json;
1316

14-
use rustc_serialize::json::{Json, Decoder};
15-
use rustc_serialize::Decodable;
1617
use std::collections::HashMap;
1718
#[allow(unused_imports)] use std::ascii::AsciiExt;
1819
use std::env;
@@ -69,14 +70,14 @@ fn main() {
6970

7071
fn named_entities_to_phf(from: &Path, to: &Path) {
7172
// A struct matching the entries in entities.json.
72-
#[derive(RustcDecodable)]
73+
#[derive(Deserialize, Debug)]
7374
struct CharRef {
7475
codepoints: Vec<u32>,
7576
//characters: String, // Present in the file but we don't need it
7677
}
7778

78-
let json = Json::from_reader(&mut File::open(from).unwrap()).unwrap();
79-
let entities: HashMap<String, CharRef> = Decodable::decode(&mut Decoder::new(json)).unwrap();
79+
let entities: HashMap<String, CharRef>
80+
= serde_json::from_reader(&mut File::open(from).unwrap()).unwrap();
8081
let mut entities: HashMap<&str, (u32, u32)> = entities.iter().map(|(name, char_ref)| {
8182
assert!(name.starts_with("&"));
8283
assert!(char_ref.codepoints.len() <= 2);
@@ -100,4 +101,4 @@ fn named_entities_to_phf(from: &Path, to: &Path) {
100101
write!(&mut file, "pub static NAMED_ENTITIES: Map<&'static str, (u32, u32)> = ").unwrap();
101102
phf_map.build(&mut file).unwrap();
102103
write!(&mut file, ";\n").unwrap();
103-
}
104+
}

0 commit comments

Comments
 (0)