Struct docopt::Decoder [] [src]

pub struct Decoder {
    // some fields omitted
}

Decoder for ArgvMap into your own Decodable types.

In general, you shouldn't have to use this type directly. It is exposed in case you want to write a generic function that produces a decodable value. For example, here's a function that takes a usage string, an argv and produces a decodable value:

use docopt::Docopt;
use rustc_serialize::Decodable;

fn decode<D: Decodable>(usage: &str, argv: &[&str])
                        -> Result<D, docopt::Error> {
    Docopt::new(usage)
           .and_then(|d| d.argv(argv.iter().cloned()).decode())
}

Trait Implementations

impl Decoder for Decoder
[src]

type Error = Error

fn error(&mut self, err: &str) -> Error

fn read_nil(&mut self) -> Result<()Error>

fn read_usize(&mut self) -> Result<usizeError>

fn read_u64(&mut self) -> Result<u64Error>

fn read_u32(&mut self) -> Result<u32Error>

fn read_u16(&mut self) -> Result<u16Error>

fn read_u8(&mut self) -> Result<u8Error>

fn read_isize(&mut self) -> Result<isizeError>

fn read_i64(&mut self) -> Result<i64Error>

fn read_i32(&mut self) -> Result<i32Error>

fn read_i16(&mut self) -> Result<i16Error>

fn read_i8(&mut self) -> Result<i8Error>

fn read_bool(&mut self) -> Result<boolError>

fn read_f64(&mut self) -> Result<f64Error>

fn read_f32(&mut self) -> Result<f32Error>

fn read_char(&mut self) -> Result<charError>

fn read_str(&mut self) -> Result<StringError>

fn read_enum<T, F>(&mut self, _: &str, f: F) -> Result<T, Error> where F: FnOnce(&mut Decoder) -> Result<T, Error>

fn read_enum_variant<T, F>(&mut self, names: &[&str], f: F) -> Result<T, Error> where F: FnMut(&mut Decoder, usize) -> Result<T, Error>

fn read_enum_variant_arg<T, F>(&mut self, _: usize, _: F) -> Result<T, Error> where F: FnOnce(&mut Decoder) -> Result<T, Error>

fn read_enum_struct_variant<T, F>(&mut self, _: &[&str], _: F) -> Result<T, Error> where F: FnMut(&mut Decoder, usize) -> Result<T, Error>

fn read_enum_struct_variant_field<T, F>(&mut self, _: &str, _: usize, _: F) -> Result<T, Error> where F: FnOnce(&mut Decoder) -> Result<T, Error>

fn read_struct<T, F>(&mut self, _: &str, _: usize, f: F) -> Result<T, Error> where F: FnOnce(&mut Decoder) -> Result<T, Error>

fn read_struct_field<T, F>(&mut self, f_name: &str, _: usize, f: F) -> Result<T, Error> where F: FnOnce(&mut Decoder) -> Result<T, Error>

fn read_tuple<T, F>(&mut self, _: usize, _: F) -> Result<T, Error> where F: FnOnce(&mut Decoder) -> Result<T, Error>

fn read_tuple_arg<T, F>(&mut self, _: usize, _: F) -> Result<T, Error> where F: FnOnce(&mut Decoder) -> Result<T, Error>

fn read_tuple_struct<T, F>(&mut self, _: &str, _: usize, _: F) -> Result<T, Error> where F: FnOnce(&mut Decoder) -> Result<T, Error>

fn read_tuple_struct_arg<T, F>(&mut self, _: usize, _: F) -> Result<T, Error> where F: FnOnce(&mut Decoder) -> Result<T, Error>

fn read_option<T, F>(&mut self, f: F) -> Result<T, Error> where F: FnMut(&mut Decoder, bool) -> Result<T, Error>

fn read_seq<T, F>(&mut self, f: F) -> Result<T, Error> where F: FnOnce(&mut Decoder, usize) -> Result<T, Error>

fn read_seq_elt<T, F>(&mut self, _: usize, f: F) -> Result<T, Error> where F: FnOnce(&mut Decoder) -> Result<T, Error>

fn read_map<T, F>(&mut self, _: F) -> Result<T, Error> where F: FnOnce(&mut Decoder, usize) -> Result<T, Error>

fn read_map_elt_key<T, F>(&mut self, _: usize, _: F) -> Result<T, Error> where F: FnOnce(&mut Decoder) -> Result<T, Error>

fn read_map_elt_val<T, F>(&mut self, _: usize, _: F) -> Result<T, Error> where F: FnOnce(&mut Decoder) -> Result<T, Error>