mirror of
https://github.com/clap-rs/clap
synced 2024-11-15 00:57:15 +00:00
chore: updates the copyright notices
This commit is contained in:
parent
d8ec4ade3c
commit
31c6852684
19 changed files with 198 additions and 87 deletions
|
@ -1,8 +1,17 @@
|
|||
use syn::DeriveInput;
|
||||
use quote::Tokens;
|
||||
use ClapDerive;
|
||||
use helpers;
|
||||
// Copyright 2018 Guillaume Pinot (@TeXitoi) <texitoi@texitoi.eu>,
|
||||
// Kevin Knapp (@kbknapp) <kbknapp@gmail.com>, and
|
||||
// Andrew Hobden (@hoverbear) <andrew@hoverbear.org>
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
|
||||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
use errors::*;
|
||||
use helpers;
|
||||
use quote::Tokens;
|
||||
use syn::DeriveInput;
|
||||
use ClapDerive;
|
||||
|
||||
pub struct ArgEnum;
|
||||
|
||||
|
@ -10,7 +19,7 @@ impl ClapDerive for ArgEnum {
|
|||
fn generate_from(ast: &DeriveInput) -> Result<Tokens> {
|
||||
let from_str_block = impl_from_str(ast)?;
|
||||
let variants_block = impl_variants(ast)?;
|
||||
|
||||
|
||||
Ok(quote! {
|
||||
#from_str_block
|
||||
#variants_block
|
||||
|
@ -23,10 +32,11 @@ fn impl_from_str(ast: &DeriveInput) -> Result<Tokens> {
|
|||
let is_case_sensitive = ast.attrs.iter().any(|v| v.name() == "case_sensitive");
|
||||
let variants = helpers::variants(ast)?;
|
||||
|
||||
let strings = variants.iter()
|
||||
let strings = variants
|
||||
.iter()
|
||||
.map(|ref variant| String::from(variant.ident.as_ref()))
|
||||
.collect::<Vec<_>>();
|
||||
|
||||
|
||||
// All of these need to be iterators.
|
||||
let ident_slice = [ident.clone()];
|
||||
let idents = ident_slice.iter().cycle();
|
||||
|
@ -72,4 +82,4 @@ fn impl_variants(ast: &DeriveInput) -> Result<Tokens> {
|
|||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
|
|
20
src/attrs.rs
20
src/attrs.rs
|
@ -1,10 +1,16 @@
|
|||
// Copyright 2018 Guillaume Pinot (@TeXitoi) <texitoi@texitoi.eu>
|
||||
// Copyright 2018 Guillaume Pinot (@TeXitoi) <texitoi@texitoi.eu>,
|
||||
// Kevin Knapp (@kbknapp) <kbknapp@gmail.com>, and
|
||||
// Andrew Hobden (@hoverbear) <andrew@hoverbear.org>
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
|
||||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
//
|
||||
// This work was derived from Structopt (https://github.com/TeXitoi/structopt)
|
||||
// commit#ea76fa1b1b273e65e3b0b1046643715b49bec51f which is licensed under the
|
||||
// MIT/Apache 2.0 license.
|
||||
|
||||
use proc_macro2::{Span, TokenStream};
|
||||
use std::{env, mem};
|
||||
|
@ -365,13 +371,7 @@ impl Attrs {
|
|||
});
|
||||
quote!( #(#methods)* )
|
||||
}
|
||||
pub fn name(&self) -> &str {
|
||||
&self.name
|
||||
}
|
||||
pub fn parser(&self) -> &(Parser, TokenStream) {
|
||||
&self.parser
|
||||
}
|
||||
pub fn kind(&self) -> Kind {
|
||||
self.kind
|
||||
}
|
||||
pub fn name(&self) -> &str { &self.name }
|
||||
pub fn parser(&self) -> &(Parser, TokenStream) { &self.parser }
|
||||
pub fn kind(&self) -> Kind { self.kind }
|
||||
}
|
||||
|
|
|
@ -1,3 +1,12 @@
|
|||
// Copyright 2018 Guillaume Pinot (@TeXitoi) <texitoi@texitoi.eu>,
|
||||
// Kevin Knapp (@kbknapp) <kbknapp@gmail.com>, and
|
||||
// Andrew Hobden (@hoverbear) <andrew@hoverbear.org>
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
|
||||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
use proc_macro;
|
||||
|
||||
// Unfortunately `proc_macro` and `syn` don't have a good error handling story.
|
||||
|
@ -16,4 +25,4 @@ error_chain! {
|
|||
display("A proc_macro lex failure happened: {:?}", error)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,10 +1,19 @@
|
|||
use syn::{DeriveInput, Variant};
|
||||
use syn::Body::Enum;
|
||||
// Copyright 2018 Guillaume Pinot (@TeXitoi) <texitoi@texitoi.eu>,
|
||||
// Kevin Knapp (@kbknapp) <kbknapp@gmail.com>, and
|
||||
// Andrew Hobden (@hoverbear) <andrew@hoverbear.org>
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
|
||||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
use errors::*;
|
||||
use syn::Body::Enum;
|
||||
use syn::{DeriveInput, Variant};
|
||||
|
||||
pub fn variants(ast: &DeriveInput) -> Result<&Vec<Variant>> {
|
||||
match ast.body {
|
||||
Enum(ref variants) => Ok(variants),
|
||||
_ => Err(ErrorKind::WrongBodyType("enum"))?,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
12
src/lib.rs
12
src/lib.rs
|
@ -1,10 +1,16 @@
|
|||
// Copyright 2018 Guillaume Pinot (@TeXitoi) <texitoi@texitoi.eu>
|
||||
// Copyright 2018 Guillaume Pinot (@TeXitoi) <texitoi@texitoi.eu>,
|
||||
// Kevin Knapp (@kbknapp) <kbknapp@gmail.com>, and
|
||||
// Andrew Hobden (@hoverbear) <andrew@hoverbear.org>
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
|
||||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
//
|
||||
// This work was derived from Structopt (https://github.com/TeXitoi/structopt)
|
||||
// commit#ea76fa1b1b273e65e3b0b1046643715b49bec51f which is licensed under the
|
||||
// MIT/Apache 2.0 license.
|
||||
|
||||
//! This crate is custom derive for StructOpt. It should not be used
|
||||
//! directly. See [structopt documentation](https://docs.rs/structopt)
|
||||
|
@ -30,9 +36,7 @@ mod helpers;
|
|||
|
||||
/// It is required to have this seperate and specificly defined.
|
||||
#[proc_macro_derive(ArgEnum, attributes(case_sensitive))]
|
||||
pub fn derive_arg_enum(input: TokenStream) -> TokenStream {
|
||||
ArgEnum::derive(input).unwrap()
|
||||
}
|
||||
pub fn derive_arg_enum(input: TokenStream) -> TokenStream { ArgEnum::derive(input).unwrap() }
|
||||
extern crate proc_macro;
|
||||
extern crate syn;
|
||||
#[macro_use]
|
||||
|
|
|
@ -1,3 +1,12 @@
|
|||
// Copyright 2018 Guillaume Pinot (@TeXitoi) <texitoi@texitoi.eu>,
|
||||
// Kevin Knapp (@kbknapp) <kbknapp@gmail.com>, and
|
||||
// Andrew Hobden (@hoverbear) <andrew@hoverbear.org>
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
|
||||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
#[macro_use]
|
||||
extern crate clap;
|
||||
#[macro_use]
|
||||
|
@ -15,14 +24,14 @@ enum ArgChoice {
|
|||
#[test]
|
||||
fn when_lowercase() {
|
||||
let matches = App::new(env!("CARGO_PKG_NAME"))
|
||||
.arg(Arg::with_name("arg")
|
||||
.arg(
|
||||
Arg::with_name("arg")
|
||||
.required(true)
|
||||
.takes_value(true)
|
||||
.possible_values(&ArgChoice::variants())
|
||||
).get_matches_from_safe(vec![
|
||||
"",
|
||||
"foo",
|
||||
]).unwrap();
|
||||
.possible_values(&ArgChoice::variants()),
|
||||
)
|
||||
.get_matches_from_safe(vec!["", "foo"])
|
||||
.unwrap();
|
||||
let t = value_t!(matches.value_of("arg"), ArgChoice);
|
||||
assert!(t.is_ok());
|
||||
assert_eq!(t.unwrap(), ArgChoice::Foo);
|
||||
|
@ -31,15 +40,15 @@ fn when_lowercase() {
|
|||
#[test]
|
||||
fn when_capitalized() {
|
||||
let matches = App::new(env!("CARGO_PKG_NAME"))
|
||||
.arg(Arg::with_name("arg")
|
||||
.arg(
|
||||
Arg::with_name("arg")
|
||||
.required(true)
|
||||
.takes_value(true)
|
||||
.possible_values(&ArgChoice::variants())
|
||||
).get_matches_from_safe(vec![
|
||||
"",
|
||||
"Foo",
|
||||
]).unwrap();
|
||||
.possible_values(&ArgChoice::variants()),
|
||||
)
|
||||
.get_matches_from_safe(vec!["", "Foo"])
|
||||
.unwrap();
|
||||
let t = value_t!(matches.value_of("arg"), ArgChoice);
|
||||
assert!(t.is_ok());
|
||||
assert_eq!(t.unwrap(), ArgChoice::Foo);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,3 +1,12 @@
|
|||
// Copyright 2018 Guillaume Pinot (@TeXitoi) <texitoi@texitoi.eu>,
|
||||
// Kevin Knapp (@kbknapp) <kbknapp@gmail.com>, and
|
||||
// Andrew Hobden (@hoverbear) <andrew@hoverbear.org>
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
|
||||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
#[macro_use]
|
||||
extern crate clap;
|
||||
#[macro_use]
|
||||
|
@ -16,14 +25,13 @@ enum ArgChoice {
|
|||
#[test]
|
||||
fn when_lowercase() {
|
||||
let matches = App::new(env!("CARGO_PKG_NAME"))
|
||||
.arg(Arg::with_name("arg")
|
||||
.arg(
|
||||
Arg::with_name("arg")
|
||||
.required(true)
|
||||
.takes_value(true)
|
||||
.possible_values(&ArgChoice::variants())
|
||||
).get_matches_from_safe(vec![
|
||||
"",
|
||||
"foo",
|
||||
]); // We expect this to fail.
|
||||
.possible_values(&ArgChoice::variants()),
|
||||
)
|
||||
.get_matches_from_safe(vec!["", "foo"]); // We expect this to fail.
|
||||
assert!(matches.is_err());
|
||||
assert_eq!(matches.unwrap_err().kind, clap::ErrorKind::InvalidValue);
|
||||
}
|
||||
|
@ -31,15 +39,15 @@ fn when_lowercase() {
|
|||
#[test]
|
||||
fn when_capitalized() {
|
||||
let matches = App::new(env!("CARGO_PKG_NAME"))
|
||||
.arg(Arg::with_name("arg")
|
||||
.arg(
|
||||
Arg::with_name("arg")
|
||||
.required(true)
|
||||
.takes_value(true)
|
||||
.possible_values(&ArgChoice::variants())
|
||||
).get_matches_from_safe(vec![
|
||||
"",
|
||||
"Foo",
|
||||
]).unwrap();
|
||||
.possible_values(&ArgChoice::variants()),
|
||||
)
|
||||
.get_matches_from_safe(vec!["", "Foo"])
|
||||
.unwrap();
|
||||
let t = value_t!(matches.value_of("arg"), ArgChoice);
|
||||
assert!(t.is_ok());
|
||||
assert_eq!(t.unwrap(), ArgChoice::Foo);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,10 +1,16 @@
|
|||
// Copyright 2018 Guillaume Pinot (@TeXitoi) <texitoi@texitoi.eu>
|
||||
// Copyright 2018 Guillaume Pinot (@TeXitoi) <texitoi@texitoi.eu>,
|
||||
// Kevin Knapp (@kbknapp) <kbknapp@gmail.com>, and
|
||||
// Andrew Hobden (@hoverbear) <andrew@hoverbear.org>
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
|
||||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
//
|
||||
// This work was derived from Structopt (https://github.com/TeXitoi/structopt)
|
||||
// commit#ea76fa1b1b273e65e3b0b1046643715b49bec51f which is licensed under the
|
||||
// MIT/Apache 2.0 license.
|
||||
|
||||
#[macro_use]
|
||||
extern crate structopt;
|
||||
|
|
|
@ -1,10 +1,16 @@
|
|||
// Copyright 2018 Guillaume Pinot (@TeXitoi) <texitoi@texitoi.eu>
|
||||
// Copyright 2018 Guillaume Pinot (@TeXitoi) <texitoi@texitoi.eu>,
|
||||
// Kevin Knapp (@kbknapp) <kbknapp@gmail.com>, and
|
||||
// Andrew Hobden (@hoverbear) <andrew@hoverbear.org>
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
|
||||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
//
|
||||
// This work was derived from Structopt (https://github.com/TeXitoi/structopt)
|
||||
// commit#ea76fa1b1b273e65e3b0b1046643715b49bec51f which is licensed under the
|
||||
// MIT/Apache 2.0 license.
|
||||
|
||||
#[macro_use]
|
||||
extern crate structopt;
|
||||
|
|
|
@ -1,10 +1,16 @@
|
|||
// Copyright 2018 Guillaume Pinot (@TeXitoi) <texitoi@texitoi.eu>
|
||||
// Copyright 2018 Guillaume Pinot (@TeXitoi) <texitoi@texitoi.eu>,
|
||||
// Kevin Knapp (@kbknapp) <kbknapp@gmail.com>, and
|
||||
// Andrew Hobden (@hoverbear) <andrew@hoverbear.org>
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
|
||||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
//
|
||||
// This work was derived from Structopt (https://github.com/TeXitoi/structopt)
|
||||
// commit#ea76fa1b1b273e65e3b0b1046643715b49bec51f which is licensed under the
|
||||
// MIT/Apache 2.0 license.
|
||||
|
||||
#[macro_use]
|
||||
extern crate structopt;
|
||||
|
@ -54,9 +60,7 @@ fn test_path_opt_simple() {
|
|||
);
|
||||
}
|
||||
|
||||
fn parse_hex(input: &str) -> Result<u64, ParseIntError> {
|
||||
u64::from_str_radix(input, 16)
|
||||
}
|
||||
fn parse_hex(input: &str) -> Result<u64, ParseIntError> { u64::from_str_radix(input, 16) }
|
||||
|
||||
#[derive(StructOpt, PartialEq, Debug)]
|
||||
struct HexOpt {
|
||||
|
@ -81,18 +85,10 @@ fn test_parse_hex() {
|
|||
assert!(err.message.contains("invalid digit found in string"), err);
|
||||
}
|
||||
|
||||
fn custom_parser_1(_: &str) -> &'static str {
|
||||
"A"
|
||||
}
|
||||
fn custom_parser_2(_: &str) -> Result<&'static str, u32> {
|
||||
Ok("B")
|
||||
}
|
||||
fn custom_parser_3(_: &OsStr) -> &'static str {
|
||||
"C"
|
||||
}
|
||||
fn custom_parser_4(_: &OsStr) -> Result<&'static str, OsString> {
|
||||
Ok("D")
|
||||
}
|
||||
fn custom_parser_1(_: &str) -> &'static str { "A" }
|
||||
fn custom_parser_2(_: &str) -> Result<&'static str, u32> { Ok("B") }
|
||||
fn custom_parser_3(_: &OsStr) -> &'static str { "C" }
|
||||
fn custom_parser_4(_: &OsStr) -> Result<&'static str, OsString> { Ok("D") }
|
||||
|
||||
#[derive(StructOpt, PartialEq, Debug)]
|
||||
struct NoOpOpt {
|
||||
|
@ -115,7 +111,9 @@ fn test_every_custom_parser() {
|
|||
c: "C",
|
||||
d: "D"
|
||||
},
|
||||
NoOpOpt::from_clap(&NoOpOpt::clap().get_matches_from(&["test", "-a=?", "-b=?", "-c=?", "-d=?"]))
|
||||
NoOpOpt::from_clap(
|
||||
&NoOpOpt::clap().get_matches_from(&["test", "-a=?", "-b=?", "-c=?", "-d=?"])
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
|
@ -158,9 +156,7 @@ fn test_parser_with_default_value() {
|
|||
#[derive(PartialEq, Debug)]
|
||||
struct Foo(u8);
|
||||
|
||||
fn foo(value: u64) -> Foo {
|
||||
Foo(value as u8)
|
||||
}
|
||||
fn foo(value: u64) -> Foo { Foo(value as u8) }
|
||||
|
||||
#[derive(StructOpt, PartialEq, Debug)]
|
||||
struct Occurrences {
|
||||
|
|
|
@ -1,10 +1,16 @@
|
|||
// Copyright 2018 Guillaume Pinot (@TeXitoi) <texitoi@texitoi.eu>
|
||||
// Copyright 2018 Guillaume Pinot (@TeXitoi) <texitoi@texitoi.eu>,
|
||||
// Kevin Knapp (@kbknapp) <kbknapp@gmail.com>, and
|
||||
// Andrew Hobden (@hoverbear) <andrew@hoverbear.org>
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
|
||||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
//
|
||||
// This work was derived from Structopt (https://github.com/TeXitoi/structopt)
|
||||
// commit#ea76fa1b1b273e65e3b0b1046643715b49bec51f which is licensed under the
|
||||
// MIT/Apache 2.0 license.
|
||||
|
||||
#![deny(warnings)]
|
||||
#![cfg(feature = "nightly")] // TODO: remove that when never is stable
|
||||
|
@ -15,9 +21,7 @@ extern crate structopt;
|
|||
|
||||
use structopt::StructOpt;
|
||||
|
||||
fn try_str(s: &str) -> Result<String, !> {
|
||||
Ok(s.into())
|
||||
}
|
||||
fn try_str(s: &str) -> Result<String, !> { Ok(s.into()) }
|
||||
|
||||
#[test]
|
||||
fn warning_never_struct() {
|
||||
|
|
|
@ -1,10 +1,16 @@
|
|||
// Copyright 2018 Guillaume Pinot (@TeXitoi) <texitoi@texitoi.eu>
|
||||
// Copyright 2018 Guillaume Pinot (@TeXitoi) <texitoi@texitoi.eu>,
|
||||
// Kevin Knapp (@kbknapp) <kbknapp@gmail.com>, and
|
||||
// Andrew Hobden (@hoverbear) <andrew@hoverbear.org>
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
|
||||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
//
|
||||
// This work was derived from Structopt (https://github.com/TeXitoi/structopt)
|
||||
// commit#ea76fa1b1b273e65e3b0b1046643715b49bec51f which is licensed under the
|
||||
// MIT/Apache 2.0 license.
|
||||
|
||||
#[macro_use]
|
||||
extern crate structopt;
|
||||
|
|
|
@ -1,10 +1,16 @@
|
|||
// Copyright 2018 Guillaume Pinot (@TeXitoi) <texitoi@texitoi.eu>
|
||||
// Copyright 2018 Guillaume Pinot (@TeXitoi) <texitoi@texitoi.eu>,
|
||||
// Kevin Knapp (@kbknapp) <kbknapp@gmail.com>, and
|
||||
// Andrew Hobden (@hoverbear) <andrew@hoverbear.org>
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
|
||||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
//
|
||||
// This work was derived from Structopt (https://github.com/TeXitoi/structopt)
|
||||
// commit#ea76fa1b1b273e65e3b0b1046643715b49bec51f which is licensed under the
|
||||
// MIT/Apache 2.0 license.
|
||||
|
||||
#[macro_use]
|
||||
extern crate structopt;
|
||||
|
|
|
@ -1,10 +1,16 @@
|
|||
// Copyright 2018 Guillaume Pinot (@TeXitoi) <texitoi@texitoi.eu>
|
||||
// Copyright 2018 Guillaume Pinot (@TeXitoi) <texitoi@texitoi.eu>,
|
||||
// Kevin Knapp (@kbknapp) <kbknapp@gmail.com>, and
|
||||
// Andrew Hobden (@hoverbear) <andrew@hoverbear.org>
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
|
||||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
//
|
||||
// This work was derived from Structopt (https://github.com/TeXitoi/structopt)
|
||||
// commit#ea76fa1b1b273e65e3b0b1046643715b49bec51f which is licensed under the
|
||||
// MIT/Apache 2.0 license.
|
||||
|
||||
#[macro_use]
|
||||
extern crate structopt;
|
||||
|
|
|
@ -1,10 +1,16 @@
|
|||
// Copyright 2018 Guillaume Pinot (@TeXitoi) <texitoi@texitoi.eu>
|
||||
// Copyright 2018 Guillaume Pinot (@TeXitoi) <texitoi@texitoi.eu>,
|
||||
// Kevin Knapp (@kbknapp) <kbknapp@gmail.com>, and
|
||||
// Andrew Hobden (@hoverbear) <andrew@hoverbear.org>
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
|
||||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
//
|
||||
// This work was derived from Structopt (https://github.com/TeXitoi/structopt)
|
||||
// commit#ea76fa1b1b273e65e3b0b1046643715b49bec51f which is licensed under the
|
||||
// MIT/Apache 2.0 license.
|
||||
|
||||
#[macro_use]
|
||||
extern crate structopt;
|
||||
|
|
|
@ -1,10 +1,16 @@
|
|||
// Copyright 2018 Guillaume Pinot (@TeXitoi) <texitoi@texitoi.eu>
|
||||
// Copyright 2018 Guillaume Pinot (@TeXitoi) <texitoi@texitoi.eu>,
|
||||
// Kevin Knapp (@kbknapp) <kbknapp@gmail.com>, and
|
||||
// Andrew Hobden (@hoverbear) <andrew@hoverbear.org>
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
|
||||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
//
|
||||
// This work was derived from Structopt (https://github.com/TeXitoi/structopt)
|
||||
// commit#ea76fa1b1b273e65e3b0b1046643715b49bec51f which is licensed under the
|
||||
// MIT/Apache 2.0 license.
|
||||
|
||||
#[macro_use]
|
||||
extern crate structopt;
|
||||
|
|
|
@ -1,10 +1,16 @@
|
|||
// Copyright 2018 Guillaume Pinot (@TeXitoi) <texitoi@texitoi.eu>
|
||||
// Copyright 2018 Guillaume Pinot (@TeXitoi) <texitoi@texitoi.eu>,
|
||||
// Kevin Knapp (@kbknapp) <kbknapp@gmail.com>, and
|
||||
// Andrew Hobden (@hoverbear) <andrew@hoverbear.org>
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
|
||||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
//
|
||||
// This work was derived from Structopt (https://github.com/TeXitoi/structopt)
|
||||
// commit#ea76fa1b1b273e65e3b0b1046643715b49bec51f which is licensed under the
|
||||
// MIT/Apache 2.0 license.
|
||||
|
||||
#[macro_use]
|
||||
extern crate structopt;
|
||||
|
|
|
@ -1,10 +1,16 @@
|
|||
// Copyright 2018 Guillaume Pinot (@TeXitoi) <texitoi@texitoi.eu>
|
||||
// Copyright 2018 Guillaume Pinot (@TeXitoi) <texitoi@texitoi.eu>,
|
||||
// Kevin Knapp (@kbknapp) <kbknapp@gmail.com>, and
|
||||
// Andrew Hobden (@hoverbear) <andrew@hoverbear.org>
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
|
||||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
//
|
||||
// This work was derived from Structopt (https://github.com/TeXitoi/structopt)
|
||||
// commit#ea76fa1b1b273e65e3b0b1046643715b49bec51f which is licensed under the
|
||||
// MIT/Apache 2.0 license.
|
||||
|
||||
#[macro_use]
|
||||
extern crate structopt;
|
||||
|
@ -95,7 +101,9 @@ fn test_raw_multi_args() {
|
|||
files: vec!["FILE".to_string()],
|
||||
values: vec![1],
|
||||
},
|
||||
Opt::from_clap(&Opt::clap().get_matches_from(&["test", "-l", "1", "--values", "1", "--", "FILE"]))
|
||||
Opt::from_clap(
|
||||
&Opt::clap().get_matches_from(&["test", "-l", "1", "--values", "1", "--", "FILE"]),
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
|
|
|
@ -1,10 +1,16 @@
|
|||
// Copyright 2018 Guillaume Pinot (@TeXitoi) <texitoi@texitoi.eu>
|
||||
// Copyright 2018 Guillaume Pinot (@TeXitoi) <texitoi@texitoi.eu>,
|
||||
// Kevin Knapp (@kbknapp) <kbknapp@gmail.com>, and
|
||||
// Andrew Hobden (@hoverbear) <andrew@hoverbear.org>
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
|
||||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
//
|
||||
// This work was derived from Structopt (https://github.com/TeXitoi/structopt)
|
||||
// commit#ea76fa1b1b273e65e3b0b1046643715b49bec51f which is licensed under the
|
||||
// MIT/Apache 2.0 license.
|
||||
|
||||
#[macro_use]
|
||||
extern crate structopt;
|
||||
|
|
Loading…
Reference in a new issue