Merge pull request #13 from ruma/rust-2018

Update to Rust 2018
This commit is contained in:
Jimmy Cuadra 2019-01-15 12:33:10 -08:00 committed by GitHub
commit cba85ba9c5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 14 additions and 39 deletions

View File

@ -9,6 +9,7 @@ name = "ruma-api-macros"
readme = "README.md" readme = "README.md"
repository = "https://github.com/ruma/ruma-api-macros" repository = "https://github.com/ruma/ruma-api-macros"
version = "0.3.0" version = "0.3.0"
edition = "2018"
[dependencies] [dependencies]
quote = "0.6.10" quote = "0.6.10"

View File

@ -1,5 +1,5 @@
use proc_macro2::{Span, TokenStream}; use proc_macro2::{Span, TokenStream};
use quote::{ToTokens, TokenStreamExt}; use quote::{quote, ToTokens, TokenStreamExt};
use syn::{ use syn::{
braced, braced,
parse::{Parse, ParseStream, Result}, parse::{Parse, ParseStream, Result},
@ -478,7 +478,7 @@ pub struct RawApi {
} }
impl Parse for RawApi { impl Parse for RawApi {
fn parse(input: ParseStream) -> Result<Self> { fn parse(input: ParseStream<'_>) -> Result<Self> {
input.parse::<kw::metadata>()?; input.parse::<kw::metadata>()?;
let metadata; let metadata;
braced!(metadata in input); braced!(metadata in input);

View File

@ -1,8 +1,8 @@
use proc_macro2::{Span, TokenStream}; use proc_macro2::{Span, TokenStream};
use quote::{ToTokens, TokenStreamExt}; use quote::{quote, quote_spanned, ToTokens, TokenStreamExt};
use syn::{spanned::Spanned, Field, Ident, Lit, Meta, NestedMeta}; use syn::{spanned::Spanned, Field, Ident, Lit, Meta, NestedMeta};
use api::strip_serde_attrs; use crate::api::strip_serde_attrs;
pub struct Request { pub struct Request {
fields: Vec<RequestField>, fields: Vec<RequestField>,
@ -254,7 +254,7 @@ impl ToTokens for Request {
}; };
let request_body_struct = if let Some(newtype_body_field) = self.newtype_body_field() { let request_body_struct = if let Some(newtype_body_field) = self.newtype_body_field() {
let mut field = newtype_body_field.clone(); let field = newtype_body_field.clone();
let ty = &field.ty; let ty = &field.ty;
let span = field.span(); let span = field.span();

View File

@ -1,8 +1,8 @@
use proc_macro2::{Span, TokenStream}; use proc_macro2::{Span, TokenStream};
use quote::{ToTokens, TokenStreamExt}; use quote::{quote, quote_spanned, ToTokens, TokenStreamExt};
use syn::{spanned::Spanned, Field, Ident, Lit, Meta, NestedMeta}; use syn::{spanned::Spanned, Field, Ident, Lit, Meta, NestedMeta};
use api::strip_serde_attrs; use crate::api::strip_serde_attrs;
pub struct Response { pub struct Response {
fields: Vec<ResponseField>, fields: Vec<ResponseField>,
@ -249,7 +249,7 @@ impl ToTokens for Response {
}; };
let response_body_struct = if let Some(newtype_body_field) = self.newtype_body_field() { let response_body_struct = if let Some(newtype_body_field) = self.newtype_body_field() {
let mut field = newtype_body_field.clone(); let field = newtype_body_field.clone();
let ty = &field.ty; let ty = &field.ty;
let span = field.span(); let span = field.span();

View File

@ -7,17 +7,11 @@
#![recursion_limit = "256"] #![recursion_limit = "256"]
extern crate proc_macro; extern crate proc_macro;
extern crate proc_macro2;
#[macro_use]
extern crate quote;
extern crate ruma_api;
extern crate syn;
use proc_macro::TokenStream; use proc_macro::TokenStream;
use quote::ToTokens; use quote::ToTokens;
use api::{Api, RawApi}; use crate::api::{Api, RawApi};
mod api; mod api;
@ -122,22 +116,12 @@ mod api;
/// # Examples /// # Examples
/// ///
/// ```rust,no_run /// ```rust,no_run
/// #![feature(proc_macro, try_from)] /// #![feature(try_from)]
///
/// extern crate futures;
/// extern crate http;
/// extern crate hyper;
/// extern crate ruma_api;
/// extern crate ruma_api_macros;
/// extern crate serde;
/// #[macro_use] extern crate serde_derive;
/// extern crate serde_json;
/// extern crate serde_urlencoded;
/// extern crate url;
/// ///
/// # fn main() { /// # fn main() {
/// pub mod some_endpoint { /// pub mod some_endpoint {
/// use ruma_api_macros::ruma_api; /// use ruma_api_macros::ruma_api;
/// use serde_derive::{Deserialize, Serialize};
/// ///
/// ruma_api! { /// ruma_api! {
/// metadata { /// metadata {
@ -173,6 +157,7 @@ mod api;
/// ///
/// pub mod newtype_body_endpoint { /// pub mod newtype_body_endpoint {
/// use ruma_api_macros::ruma_api; /// use ruma_api_macros::ruma_api;
/// use serde_derive::{Deserialize, Serialize};
/// ///
/// #[derive(Clone, Debug, Deserialize, Serialize)] /// #[derive(Clone, Debug, Deserialize, Serialize)]
/// pub struct MyCustomType { /// pub struct MyCustomType {

View File

@ -1,19 +1,8 @@
#![feature(try_from)] #![feature(try_from)]
extern crate futures;
extern crate http;
extern crate hyper;
extern crate ruma_api;
extern crate ruma_api_macros;
extern crate serde;
#[macro_use]
extern crate serde_derive;
extern crate serde_json;
extern crate serde_urlencoded;
extern crate url;
pub mod some_endpoint { pub mod some_endpoint {
use ruma_api_macros::ruma_api; use ruma_api_macros::ruma_api;
use serde_derive::{Deserialize, Serialize};
ruma_api! { ruma_api! {
metadata { metadata {