Expand description
A library (far from anything) to generate icalendars This implementation is still far from complete, I haven’t even read the entire spec yet. Instead I implemented the parts I needed first. More to come, contributions very welcome.
Structure
Calendar
s consist ofComponents
Component
s are e.g.Event
orTodo
Component
s consist ofProperty
sProperty
s may haveParameter
s
let event = Event::new()
.summary("test event")
.description("here I have something really important to do")
.starts(Utc::now())
.class(Class::Confidential)
.ends(Utc::now() + Duration::days(1))
.append_property(Property::new("TEST", "FOOBAR")
.add_parameter("IMPORTANCE", "very")
.add_parameter("DUE", "tomorrow")
.done())
.done();
let bday = Event::new()
.all_day(Utc.ymd(2016, 3, 15))
.summary("My Birthday")
.description(
r#"Hey, I'm gonna have a party
BYOB: Bring your own beer.
Hendrik"#
)
.done();
let todo = Todo::new().summary("Buy some milk").done();
let mut calendar = Calendar::new();
calendar.add(event);
calendar.add(todo);
calendar.add(bday);
Structs
Represents a calendar
key-value pairs inside of
Property
skey-value pairs inside of
Component
sEnums
Defines:
Public
, Private
, Confidential
Encodes the status of an
Event
Encodes the status of a
Todo
see 8.3.4. Value Data Types Registry
Traits
Implemented by everything that goes into a
Calendar