pythonic 0.2.4

pythonic is a Rust AST builder that generates Python
Documentation
use std::fmt::{Display, Formatter, Result};

use {Argument, Assignment, Class, Comment, Function, FunctionCall, KeywordArgument};

#[derive(Debug, Clone)]
pub enum Statement {
    Argument(Argument),
    Assignment(Assignment),
    Class(Class),
    Comment(Comment),
    Function(Function),
    FunctionCall(FunctionCall),
    KeywordArgument(KeywordArgument),
}

impl Display for Statement {
    fn fmt(&self, f: &mut Formatter) -> Result {
        let s: String = match self {
            &Statement::Argument(ref s) => format!("{}", s),
            &Statement::Assignment(ref s) => format!("{}", s),
            &Statement::Comment(ref s) => format!("{}", s),
            &Statement::Class(ref s) => format!("{}", s),
            &Statement::FunctionCall(ref s) => format!("{}", s),
            &Statement::Function(ref s) => format!("{}", s),
            &Statement::KeywordArgument(ref s) => format!("{}", s),
        };
        write!(f, "{}", s)
    }
}