Add serde_codegen::expand to avoid public Syntex dependency

This commit is contained in:
David Tolnay
2016-06-09 00:54:32 -07:00
parent 1917e54a6e
commit 3d2e3beafe
3 changed files with 15 additions and 12 deletions
+12
View File
@@ -22,6 +22,11 @@ extern crate syntax;
#[cfg(not(feature = "with-syntex"))]
extern crate rustc_plugin;
#[cfg(feature = "with-syntex")]
use std::io;
#[cfg(feature = "with-syntex")]
use std::path::Path;
#[cfg(not(feature = "with-syntex"))]
use syntax::feature_gate::AttributeType;
@@ -31,6 +36,13 @@ include!(concat!(env!("OUT_DIR"), "/lib.rs"));
#[cfg(not(feature = "with-syntex"))]
include!("lib.rs.in");
#[cfg(feature = "with-syntex")]
pub fn expand(src: &Path, dst: &Path) -> io::Result<()> {
let mut registry = syntex::Registry::new();
register(&mut registry);
registry.expand("", src, dst)
}
#[cfg(feature = "with-syntex")]
pub fn register(reg: &mut syntex::Registry) {
use syntax::{ast, fold};