automata/ical/validator
Types
pub type TimezoneRule {
TimezoneRule(
dtstart: ast.DateTime,
tzoffsetfrom: String,
tzoffsetto: String,
rrule: option.Option(ast.RawRRule),
tzname: option.Option(String),
)
}
Constructors
-
TimezoneRule( dtstart: ast.DateTime, tzoffsetfrom: String, tzoffsetto: String, rrule: option.Option(ast.RawRRule), tzname: option.Option(String), )
pub type UnknownComponent {
UnknownComponent(
kind: String,
properties: List(ast.RawProperty),
children: List(ast.RawComponent),
)
}
Constructors
-
UnknownComponent( kind: String, properties: List(ast.RawProperty), children: List(ast.RawComponent), )
pub type ValidationError {
MissingVersion
MissingProductId
MissingComponentProperty(component: String, name: String)
InvalidDateTime(name: String, raw: String)
InvalidEscape(raw: String)
InvalidInteger(name: String, raw: String)
InvalidRRule(raw: String, error: parser.ParseError)
DuplicateRRule(component_uid: String)
}
Constructors
-
MissingVersion -
MissingProductId -
MissingComponentProperty(component: String, name: String) -
InvalidDateTime(name: String, raw: String) -
InvalidEscape(raw: String) -
InvalidInteger(name: String, raw: String) -
InvalidRRule(raw: String, error: parser.ParseError) -
DuplicateRRule(component_uid: String)
Values
pub fn add_exdate(event: Event, dt: ast.DateTime) -> Event
pub fn add_rdate(event: Event, dt: ast.DateTime) -> Event
pub fn add_timezone_daylight(
tz: Timezone,
rule: TimezoneRule,
) -> Timezone
pub fn add_timezone_standard(
tz: Timezone,
rule: TimezoneRule,
) -> Timezone
pub fn add_todo_exdate(t: Todo, dt: ast.DateTime) -> Todo
pub fn add_todo_rdate(t: Todo, dt: ast.DateTime) -> Todo
pub fn add_unknown_component(
cal: Calendar,
component: UnknownComponent,
) -> Calendar
pub fn alarm_action(a: Alarm) -> String
pub fn alarm_attendees(a: Alarm) -> List(String)
pub fn alarm_description(a: Alarm) -> option.Option(String)
pub fn alarm_duration(a: Alarm) -> option.Option(String)
pub fn alarm_repeat(a: Alarm) -> option.Option(Int)
pub fn alarm_summary(a: Alarm) -> option.Option(String)
pub fn alarm_trigger(a: Alarm) -> String
pub fn calscale(cal: Calendar) -> option.Option(String)
pub fn event_attendees(event: Event) -> List(String)
pub fn event_categories(event: Event) -> List(String)
pub fn event_created(event: Event) -> option.Option(ast.DateTime)
pub fn event_description(event: Event) -> option.Option(String)
pub fn event_dtend(event: Event) -> option.Option(ast.DateTime)
pub fn event_dtend_tzid(event: Event) -> option.Option(String)
pub fn event_dtstamp(event: Event) -> ast.DateTime
pub fn event_dtstart(event: Event) -> option.Option(ast.DateTime)
pub fn event_dtstart_tzid(event: Event) -> option.Option(String)
pub fn event_duration(event: Event) -> option.Option(String)
pub fn event_exdates(event: Event) -> List(ast.DateTime)
pub fn event_last_modified(
event: Event,
) -> option.Option(ast.DateTime)
pub fn event_location(event: Event) -> option.Option(String)
pub fn event_organizer(event: Event) -> option.Option(String)
pub fn event_rdates(event: Event) -> List(ast.DateTime)
pub fn event_rrule(event: Event) -> option.Option(ast.RawRRule)
pub fn event_sequence(event: Event) -> Int
pub fn event_status(event: Event) -> option.Option(String)
pub fn event_summary(event: Event) -> option.Option(String)
pub fn event_transparency(event: Event) -> option.Option(String)
pub fn event_url(event: Event) -> option.Option(String)
pub fn freebusy_attendees(fb: FreeBusy) -> List(String)
pub fn freebusy_dtend(
fb: FreeBusy,
) -> option.Option(ast.DateTime)
pub fn freebusy_dtstamp(fb: FreeBusy) -> ast.DateTime
pub fn freebusy_dtstart(
fb: FreeBusy,
) -> option.Option(ast.DateTime)
pub fn freebusy_organizer(fb: FreeBusy) -> option.Option(String)
pub fn freebusy_periods(fb: FreeBusy) -> List(String)
pub fn freebusy_uid(fb: FreeBusy) -> String
pub fn journal_categories(j: Journal) -> List(String)
pub fn journal_description(j: Journal) -> option.Option(String)
pub fn journal_dtstamp(j: Journal) -> ast.DateTime
pub fn journal_dtstart(j: Journal) -> option.Option(ast.DateTime)
pub fn journal_status(j: Journal) -> option.Option(String)
pub fn journal_summary(j: Journal) -> option.Option(String)
pub fn journal_uid(j: Journal) -> String
pub fn method(cal: Calendar) -> option.Option(String)
pub fn new_calendar(
version version: String,
prod_id prod_id: String,
) -> Calendar
pub fn new_event(
uid uid: String,
dtstamp dtstamp: ast.DateTime,
) -> Event
pub fn new_freebusy(
uid uid: String,
dtstamp dtstamp: ast.DateTime,
) -> FreeBusy
pub fn new_journal(
uid uid: String,
dtstamp dtstamp: ast.DateTime,
) -> Journal
pub fn new_timezone(tzid tzid: String) -> Timezone
pub fn new_timezone_rule(
dtstart dtstart: ast.DateTime,
offset_from offset_from: String,
offset_to offset_to: String,
) -> TimezoneRule
pub fn new_todo(
uid uid: String,
dtstamp dtstamp: ast.DateTime,
) -> Todo
pub fn product_id(cal: Calendar) -> String
pub fn timezone_daylight(tz: Timezone) -> List(TimezoneRule)
pub fn timezone_last_modified(
tz: Timezone,
) -> option.Option(ast.DateTime)
pub fn timezone_standard(tz: Timezone) -> List(TimezoneRule)
pub fn timezone_tzid(tz: Timezone) -> String
pub fn timezone_tzurl(tz: Timezone) -> option.Option(String)
pub fn todo_categories(t: Todo) -> List(String)
pub fn todo_completed(t: Todo) -> option.Option(ast.DateTime)
pub fn todo_description(t: Todo) -> option.Option(String)
pub fn todo_dtstamp(t: Todo) -> ast.DateTime
pub fn todo_dtstart(t: Todo) -> option.Option(ast.DateTime)
pub fn todo_due(t: Todo) -> option.Option(ast.DateTime)
pub fn todo_exdates(t: Todo) -> List(ast.DateTime)
pub fn todo_percent_complete(t: Todo) -> option.Option(Int)
pub fn todo_priority(t: Todo) -> option.Option(Int)
pub fn todo_rdates(t: Todo) -> List(ast.DateTime)
pub fn todo_rrule(t: Todo) -> option.Option(ast.RawRRule)
pub fn todo_status(t: Todo) -> option.Option(String)
pub fn todo_summary(t: Todo) -> option.Option(String)
pub fn unknown_components(
cal: Calendar,
) -> List(UnknownComponent)
pub fn validate(
raw: ast.RawCalendar,
) -> Result(Calendar, ValidationError)
pub fn with_created(event: Event, dt: ast.DateTime) -> Event
pub fn with_dtend(event: Event, dt: ast.DateTime) -> Event
pub fn with_dtstart(event: Event, dt: ast.DateTime) -> Event
pub fn with_freebusy_dtend(
fb: FreeBusy,
dt: ast.DateTime,
) -> FreeBusy
pub fn with_freebusy_dtstart(
fb: FreeBusy,
dt: ast.DateTime,
) -> FreeBusy
pub fn with_journal_dtstart(
j: Journal,
dt: ast.DateTime,
) -> Journal
pub fn with_last_modified(
event: Event,
dt: ast.DateTime,
) -> Event
pub fn with_rrule(event: Event, rule: ast.RawRRule) -> Event
pub fn with_timezone_last_modified(
tz: Timezone,
dt: ast.DateTime,
) -> Timezone
pub fn with_timezone_rule_name(
rule: TimezoneRule,
value: String,
) -> TimezoneRule
pub fn with_timezone_rule_rrule(
rule: TimezoneRule,
value: ast.RawRRule,
) -> TimezoneRule
pub fn with_todo_completed(t: Todo, dt: ast.DateTime) -> Todo
pub fn with_todo_dtstart(t: Todo, dt: ast.DateTime) -> Todo
pub fn with_todo_due(t: Todo, dt: ast.DateTime) -> Todo
pub fn with_todo_rrule(t: Todo, rule: ast.RawRRule) -> Todo