docs.rs failed to build ecp-0.1.1
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
ecp
easily build compiler plugins.
Document
Sorry, you need to build the document with cargo doc
.
Prerequisites
ecp required latest Nightly Rust.
Why use "compiler plugin" instead of "Macros 1.1"?
I need not only "custom derive", but also more "compiler plugin" features. Currently "Macros 1.1" is also unstable.
Usage
Add dependencies to Cargo.toml
[]
= "^0.1"
In your main.rs
or lib.rs
:
extern crate syntax;
extern crate ecp;
Examples
Create a simple macro which prints "Hello world!":
#![feature(quote, plugin_registrar, rustc_private)]
extern crate syntax;
extern crate ecp;
use ecp::prelude::*;
#[plugin_registrar]
pub fn register(reg: &mut Registry) {
reg.register_macro("test", test);
}
pub fn test(cx: &mut ExtCtxt, _: Span, _: &[TokenTree]) -> Box<MacResult + 'static> {
MacEager::expr(quote_expr!(cx, println!("Hello world!")))
}
License
ecp is primarily distributed under the terms of the MIT license. See LICENSE for details.