fruently 0.9.0

A yet another Fluentd logger for Rust.
Documentation
//! Implement concrete sending record(s) specifications.

use time;
use error::FluentError;
use std::fmt::Debug;
use serde::ser::Serialize;
#[cfg(not(feature = "time-as-integer"))]
use event_time::EventTime;

#[cfg(not(feature = "time-as-integer"))]
pub type Entry<T> where T: Serialize = (EventTime, T);
#[cfg(feature = "time-as-integer")]
pub type Entry<T> where T: Serialize = (i64, T);

pub trait JsonForwardable {
    fn post<T: Serialize + Debug + Clone>(self, record: T) -> Result<(), FluentError>;
    fn post_with_time<T: Serialize + Debug + Clone>(self,
                                                    record: T,
                                                    time: time::Tm)
                                                    -> Result<(), FluentError>;
}

pub trait MsgpackForwardable {
    fn post<T: Serialize + Debug>(self, record: T) -> Result<(), FluentError>;
    fn post_with_time<T: Serialize + Debug>(self,
                                            record: T,
                                            time: time::Tm)
                                            -> Result<(), FluentError>;
}

pub trait Forwardable {
    fn post<T: Serialize + Debug>(self, entries: Vec<Entry<T>>) -> Result<(), FluentError>;
}

pub mod json;
pub mod msgpack;
pub mod forward;