parent
e547a06639
commit
ef5d09e144
@ -15,7 +15,7 @@ You may be looking for:
|
||||
## Serde in action
|
||||
|
||||
```rust
|
||||
#![feature(rustc_macro)]
|
||||
#![feature(proc_macro)]
|
||||
|
||||
#[macro_use]
|
||||
extern crate serde_derive;
|
||||
|
@ -1,4 +1,4 @@
|
||||
#![cfg_attr(feature = "serde_derive", feature(rustc_macro))]
|
||||
#![cfg_attr(feature = "serde_derive", feature(proc_macro))]
|
||||
|
||||
#[cfg(feature = "serde_derive")]
|
||||
#[macro_use]
|
||||
|
@ -12,7 +12,7 @@ include = ["Cargo.toml", "src/**/*.rs"]
|
||||
|
||||
[lib]
|
||||
name = "serde_derive"
|
||||
rustc-macro = true
|
||||
proc-macro = true
|
||||
|
||||
[dependencies.serde_codegen]
|
||||
version = "=0.8.11"
|
||||
|
@ -1,12 +1,12 @@
|
||||
#![feature(rustc_macro, rustc_macro_lib)]
|
||||
#![feature(proc_macro, proc_macro_lib)]
|
||||
#![cfg(not(test))]
|
||||
|
||||
extern crate rustc_macro;
|
||||
extern crate proc_macro;
|
||||
extern crate serde_codegen;
|
||||
|
||||
use rustc_macro::TokenStream;
|
||||
use proc_macro::TokenStream;
|
||||
|
||||
#[rustc_macro_derive(Serialize)]
|
||||
#[proc_macro_derive(Serialize)]
|
||||
pub fn derive_serialize(input: TokenStream) -> TokenStream {
|
||||
let item = format!("#[derive(Serialize)]\n{}", input);
|
||||
match serde_codegen::expand_single_item(&item) {
|
||||
@ -15,7 +15,7 @@ pub fn derive_serialize(input: TokenStream) -> TokenStream {
|
||||
}
|
||||
}
|
||||
|
||||
#[rustc_macro_derive(Deserialize)]
|
||||
#[proc_macro_derive(Deserialize)]
|
||||
pub fn derive_deserialize(input: TokenStream) -> TokenStream {
|
||||
let item = format!("#[derive(Deserialize)]\n{}", input);
|
||||
match serde_codegen::expand_single_item(&item) {
|
||||
|
@ -1,4 +1,4 @@
|
||||
#![feature(rustc_macro)]
|
||||
#![feature(proc_macro)]
|
||||
|
||||
#[macro_use]
|
||||
extern crate serde_derive;
|
||||
|
@ -1,4 +1,4 @@
|
||||
#![feature(rustc_macro)]
|
||||
#![feature(proc_macro)]
|
||||
|
||||
#[macro_use]
|
||||
extern crate serde_derive;
|
||||
|
@ -1,4 +1,4 @@
|
||||
#![feature(rustc_macro)]
|
||||
#![feature(proc_macro)]
|
||||
|
||||
#[macro_use]
|
||||
extern crate serde_derive;
|
||||
|
@ -1,4 +1,4 @@
|
||||
#![feature(rustc_macro)]
|
||||
#![feature(proc_macro)]
|
||||
|
||||
#[macro_use]
|
||||
extern crate serde_derive;
|
||||
|
@ -1,4 +1,4 @@
|
||||
#![feature(rustc_macro)]
|
||||
#![feature(proc_macro)]
|
||||
|
||||
#[macro_use]
|
||||
extern crate serde_derive;
|
||||
|
@ -1,4 +1,4 @@
|
||||
#![feature(rustc_macro)]
|
||||
#![feature(proc_macro)]
|
||||
|
||||
#[macro_use]
|
||||
extern crate serde_derive;
|
||||
|
@ -1,4 +1,4 @@
|
||||
#![feature(rustc_macro)]
|
||||
#![feature(proc_macro)]
|
||||
|
||||
#[macro_use]
|
||||
extern crate serde_derive;
|
||||
|
@ -1,4 +1,4 @@
|
||||
#![feature(rustc_macro)]
|
||||
#![feature(proc_macro)]
|
||||
|
||||
#[macro_use]
|
||||
extern crate serde_derive;
|
||||
|
@ -1,4 +1,4 @@
|
||||
#![feature(rustc_macro)]
|
||||
#![feature(proc_macro)]
|
||||
|
||||
#[macro_use]
|
||||
extern crate serde_derive;
|
||||
|
@ -1,4 +1,4 @@
|
||||
#![feature(rustc_macro)]
|
||||
#![feature(proc_macro)]
|
||||
|
||||
#[macro_use]
|
||||
extern crate serde_derive;
|
||||
|
@ -1,4 +1,4 @@
|
||||
#![feature(rustc_macro)]
|
||||
#![feature(proc_macro)]
|
||||
#![deny(identity_op)]
|
||||
|
||||
#[macro_use]
|
||||
|
@ -1,4 +1,4 @@
|
||||
#![feature(test, rustc_macro, rustc_attrs)]
|
||||
#![feature(test, proc_macro, rustc_attrs)]
|
||||
|
||||
#[macro_use]
|
||||
extern crate serde_derive;
|
||||
|
Loading…
Reference in New Issue
Block a user