source:
npl/overig/libical/libical-win32-add-generated-files.diff
@
2154c77
Last change on this file since 2154c77 was c5c522c, checked in by , 8 years ago | |
---|---|
|
|
File size: 534.9 KB |
-
src/libical/icalderivedparameter.c
diff -Nurb libical-0.42.orig/src/libical/icalderivedparameter.c libical-0.42/src/libical/icalderivedparameter.c
old new 1 /* -*- Mode: C -*- 2 ====================================================================== 3 FILE: icalderivedparameters.{c,h} 4 CREATOR: eric 09 May 1999 5 6 $Id: icalderivedparameter.c.in,v 1.9 2008-01-15 23:17:40 dothebart Exp $ 7 $Locker: $ 8 9 10 (C) COPYRIGHT 2000, Eric Busboom, http://www.softwarestudio.org 11 12 This program is free software; you can redistribute it and/or modify 13 it under the terms of either: 14 15 The LGPL as published by the Free Software Foundation, version 16 2.1, available at: http://www.fsf.org/copyleft/lesser.html 17 18 Or: 19 20 The Mozilla Public License Version 1.0. You may obtain a copy of 21 the License at http://www.mozilla.org/MPL/ 22 23 The original code is icalderivedparameters.{c,h} 24 25 Contributions from: 26 Graham Davison (g.m.davison@computer.org) 27 28 ======================================================================*/ 29 /*#line 29 "icalparameter.c.in"*/ 30 #ifdef HAVE_CONFIG_H 31 #include <config.h> 32 #endif 33 34 35 #include "icalparameter.h" 36 #include "icalparameterimpl.h" 37 38 #include "icalproperty.h" 39 #include "icalerror.h" 40 #include "icalmemory.h" 41 42 #include <stdlib.h> /* for malloc() */ 43 #include <errno.h> 44 #include <string.h> /* for memset() */ 45 46 #ifdef WIN32 47 #define strcasecmp stricmp 48 #endif 49 50 icalvalue_kind icalparameter_value_to_value_kind(icalparameter_value value); 51 52 struct icalparameter_impl* icalparameter_new_impl(icalparameter_kind kind); 53 54 /* This map associates each of the parameters with the string 55 representation of the parameter's name */ 56 struct icalparameter_kind_map { 57 icalparameter_kind kind; 58 const char *name; 59 60 }; 61 62 /* This map associates the enumerations for the VALUE parameter with 63 the kinds of VALUEs. */ 64 65 struct icalparameter_value_kind_map { 66 icalparameter_value value; 67 icalvalue_kind kind; 68 }; 69 70 /* This map associates the parameter enumerations with a specific parameter and the string representation of the enumeration */ 71 72 struct icalparameter_map { 73 icalparameter_kind kind; 74 int enumeration; 75 const char* str; 76 }; 77 78 79 80 static const struct icalparameter_value_kind_map value_kind_map[15] = { 81 {ICAL_VALUE_BINARY,ICAL_BINARY_VALUE}, 82 {ICAL_VALUE_BOOLEAN,ICAL_BOOLEAN_VALUE}, 83 {ICAL_VALUE_DATE,ICAL_DATE_VALUE}, 84 {ICAL_VALUE_DURATION,ICAL_DURATION_VALUE}, 85 {ICAL_VALUE_FLOAT,ICAL_FLOAT_VALUE}, 86 {ICAL_VALUE_INTEGER,ICAL_INTEGER_VALUE}, 87 {ICAL_VALUE_PERIOD,ICAL_PERIOD_VALUE}, 88 {ICAL_VALUE_RECUR,ICAL_RECUR_VALUE}, 89 {ICAL_VALUE_TEXT,ICAL_TEXT_VALUE}, 90 {ICAL_VALUE_URI,ICAL_URI_VALUE}, 91 {ICAL_VALUE_DATETIME,ICAL_DATETIME_VALUE}, 92 {ICAL_VALUE_UTCOFFSET,ICAL_UTCOFFSET_VALUE}, 93 {ICAL_VALUE_CALADDRESS,ICAL_CALADDRESS_VALUE}, 94 {ICAL_VALUE_X,ICAL_X_VALUE}, 95 {ICAL_VALUE_NONE,ICAL_NO_VALUE} 96 }; 97 98 static const struct icalparameter_kind_map parameter_map[32] = { 99 {ICAL_ACTIONPARAM_PARAMETER,"ACTIONPARAM"}, 100 {ICAL_ALTREP_PARAMETER,"ALTREP"}, 101 {ICAL_CHARSET_PARAMETER,"CHARSET"}, 102 {ICAL_CN_PARAMETER,"CN"}, 103 {ICAL_CUTYPE_PARAMETER,"CUTYPE"}, 104 {ICAL_DELEGATEDFROM_PARAMETER,"DELEGATED-FROM"}, 105 {ICAL_DELEGATEDTO_PARAMETER,"DELEGATED-TO"}, 106 {ICAL_DIR_PARAMETER,"DIR"}, 107 {ICAL_ENABLE_PARAMETER,"ENABLE"}, 108 {ICAL_ENCODING_PARAMETER,"ENCODING"}, 109 {ICAL_FBTYPE_PARAMETER,"FBTYPE"}, 110 {ICAL_FMTTYPE_PARAMETER,"FMTTYPE"}, 111 {ICAL_ID_PARAMETER,"ID"}, 112 {ICAL_LANGUAGE_PARAMETER,"LANGUAGE"}, 113 {ICAL_LATENCY_PARAMETER,"LATENCY"}, 114 {ICAL_LOCAL_PARAMETER,"LOCAL"}, 115 {ICAL_LOCALIZE_PARAMETER,"LOCALIZE"}, 116 {ICAL_MEMBER_PARAMETER,"MEMBER"}, 117 {ICAL_OPTIONS_PARAMETER,"OPTIONS"}, 118 {ICAL_PARTSTAT_PARAMETER,"PARTSTAT"}, 119 {ICAL_RANGE_PARAMETER,"RANGE"}, 120 {ICAL_RELATED_PARAMETER,"RELATED"}, 121 {ICAL_RELTYPE_PARAMETER,"RELTYPE"}, 122 {ICAL_ROLE_PARAMETER,"ROLE"}, 123 {ICAL_RSVP_PARAMETER,"RSVP"}, 124 {ICAL_SENTBY_PARAMETER,"SENT-BY"}, 125 {ICAL_TZID_PARAMETER,"TZID"}, 126 {ICAL_VALUE_PARAMETER,"VALUE"}, 127 {ICAL_X_PARAMETER,"X"}, 128 {ICAL_XLICCOMPARETYPE_PARAMETER,"X-LIC-COMPARETYPE"}, 129 {ICAL_XLICERRORTYPE_PARAMETER,"X-LIC-ERRORTYPE"}, 130 { ICAL_NO_PARAMETER, ""} 131 }; 132 133 static const struct icalparameter_map icalparameter_map[] = { 134 {ICAL_ANY_PARAMETER,0,""}, 135 {ICAL_ACTIONPARAM_PARAMETER,ICAL_ACTIONPARAM_ASK,"ASK"}, 136 {ICAL_ACTIONPARAM_PARAMETER,ICAL_ACTIONPARAM_ABORT,"ABORT"}, 137 {ICAL_CUTYPE_PARAMETER,ICAL_CUTYPE_INDIVIDUAL,"INDIVIDUAL"}, 138 {ICAL_CUTYPE_PARAMETER,ICAL_CUTYPE_GROUP,"GROUP"}, 139 {ICAL_CUTYPE_PARAMETER,ICAL_CUTYPE_RESOURCE,"RESOURCE"}, 140 {ICAL_CUTYPE_PARAMETER,ICAL_CUTYPE_ROOM,"ROOM"}, 141 {ICAL_CUTYPE_PARAMETER,ICAL_CUTYPE_UNKNOWN,"UNKNOWN"}, 142 {ICAL_ENABLE_PARAMETER,ICAL_ENABLE_TRUE,"TRUE"}, 143 {ICAL_ENABLE_PARAMETER,ICAL_ENABLE_FALSE,"FALSE"}, 144 {ICAL_ENCODING_PARAMETER,ICAL_ENCODING_8BIT,"8BIT"}, 145 {ICAL_ENCODING_PARAMETER,ICAL_ENCODING_BASE64,"BASE64"}, 146 {ICAL_FBTYPE_PARAMETER,ICAL_FBTYPE_FREE,"FREE"}, 147 {ICAL_FBTYPE_PARAMETER,ICAL_FBTYPE_BUSY,"BUSY"}, 148 {ICAL_FBTYPE_PARAMETER,ICAL_FBTYPE_BUSYUNAVAILABLE,"BUSY-UNAVAILABLE"}, 149 {ICAL_FBTYPE_PARAMETER,ICAL_FBTYPE_BUSYTENTATIVE,"BUSY-TENTATIVE"}, 150 {ICAL_LOCAL_PARAMETER,ICAL_LOCAL_TRUE,"TRUE"}, 151 {ICAL_LOCAL_PARAMETER,ICAL_LOCAL_FALSE,"FALSE"}, 152 {ICAL_PARTSTAT_PARAMETER,ICAL_PARTSTAT_NEEDSACTION,"NEEDS-ACTION"}, 153 {ICAL_PARTSTAT_PARAMETER,ICAL_PARTSTAT_ACCEPTED,"ACCEPTED"}, 154 {ICAL_PARTSTAT_PARAMETER,ICAL_PARTSTAT_DECLINED,"DECLINED"}, 155 {ICAL_PARTSTAT_PARAMETER,ICAL_PARTSTAT_TENTATIVE,"TENTATIVE"}, 156 {ICAL_PARTSTAT_PARAMETER,ICAL_PARTSTAT_DELEGATED,"DELEGATED"}, 157 {ICAL_PARTSTAT_PARAMETER,ICAL_PARTSTAT_COMPLETED,"COMPLETED"}, 158 {ICAL_PARTSTAT_PARAMETER,ICAL_PARTSTAT_INPROCESS,"INPROCESS"}, 159 {ICAL_RANGE_PARAMETER,ICAL_RANGE_THISANDPRIOR,"THISANDPRIOR"}, 160 {ICAL_RANGE_PARAMETER,ICAL_RANGE_THISANDFUTURE,"THISANDFUTURE"}, 161 {ICAL_RELATED_PARAMETER,ICAL_RELATED_START,"START"}, 162 {ICAL_RELATED_PARAMETER,ICAL_RELATED_END,"END"}, 163 {ICAL_RELTYPE_PARAMETER,ICAL_RELTYPE_PARENT,"PARENT"}, 164 {ICAL_RELTYPE_PARAMETER,ICAL_RELTYPE_CHILD,"CHILD"}, 165 {ICAL_RELTYPE_PARAMETER,ICAL_RELTYPE_SIBLING,"SIBLING"}, 166 {ICAL_ROLE_PARAMETER,ICAL_ROLE_CHAIR,"CHAIR"}, 167 {ICAL_ROLE_PARAMETER,ICAL_ROLE_REQPARTICIPANT,"REQ-PARTICIPANT"}, 168 {ICAL_ROLE_PARAMETER,ICAL_ROLE_OPTPARTICIPANT,"OPT-PARTICIPANT"}, 169 {ICAL_ROLE_PARAMETER,ICAL_ROLE_NONPARTICIPANT,"NON-PARTICIPANT"}, 170 {ICAL_RSVP_PARAMETER,ICAL_RSVP_TRUE,"TRUE"}, 171 {ICAL_RSVP_PARAMETER,ICAL_RSVP_FALSE,"FALSE"}, 172 {ICAL_VALUE_PARAMETER,ICAL_VALUE_BINARY,"BINARY"}, 173 {ICAL_VALUE_PARAMETER,ICAL_VALUE_BOOLEAN,"BOOLEAN"}, 174 {ICAL_VALUE_PARAMETER,ICAL_VALUE_DATE,"DATE"}, 175 {ICAL_VALUE_PARAMETER,ICAL_VALUE_DURATION,"DURATION"}, 176 {ICAL_VALUE_PARAMETER,ICAL_VALUE_FLOAT,"FLOAT"}, 177 {ICAL_VALUE_PARAMETER,ICAL_VALUE_INTEGER,"INTEGER"}, 178 {ICAL_VALUE_PARAMETER,ICAL_VALUE_PERIOD,"PERIOD"}, 179 {ICAL_VALUE_PARAMETER,ICAL_VALUE_RECUR,"RECUR"}, 180 {ICAL_VALUE_PARAMETER,ICAL_VALUE_TEXT,"TEXT"}, 181 {ICAL_VALUE_PARAMETER,ICAL_VALUE_URI,"URI"}, 182 {ICAL_VALUE_PARAMETER,ICAL_VALUE_ERROR,"ERROR"}, 183 {ICAL_VALUE_PARAMETER,ICAL_VALUE_DATETIME,"DATE-TIME"}, 184 {ICAL_VALUE_PARAMETER,ICAL_VALUE_UTCOFFSET,"UTC-OFFSET"}, 185 {ICAL_VALUE_PARAMETER,ICAL_VALUE_CALADDRESS,"CAL-ADDRESS"}, 186 {ICAL_XLICCOMPARETYPE_PARAMETER,ICAL_XLICCOMPARETYPE_EQUAL,"EQUAL"}, 187 {ICAL_XLICCOMPARETYPE_PARAMETER,ICAL_XLICCOMPARETYPE_NOTEQUAL,"NOTEQUAL"}, 188 {ICAL_XLICCOMPARETYPE_PARAMETER,ICAL_XLICCOMPARETYPE_LESS,"LESS"}, 189 {ICAL_XLICCOMPARETYPE_PARAMETER,ICAL_XLICCOMPARETYPE_GREATER,"GREATER"}, 190 {ICAL_XLICCOMPARETYPE_PARAMETER,ICAL_XLICCOMPARETYPE_LESSEQUAL,"LESSEQUAL"}, 191 {ICAL_XLICCOMPARETYPE_PARAMETER,ICAL_XLICCOMPARETYPE_GREATEREQUAL,"GREATEREQUAL"}, 192 {ICAL_XLICCOMPARETYPE_PARAMETER,ICAL_XLICCOMPARETYPE_REGEX,"REGEX"}, 193 {ICAL_XLICCOMPARETYPE_PARAMETER,ICAL_XLICCOMPARETYPE_ISNULL,"ISNULL"}, 194 {ICAL_XLICCOMPARETYPE_PARAMETER,ICAL_XLICCOMPARETYPE_ISNOTNULL,"ISNOTNULL"}, 195 {ICAL_XLICERRORTYPE_PARAMETER,ICAL_XLICERRORTYPE_COMPONENTPARSEERROR,"COMPONENT-PARSE-ERROR"}, 196 {ICAL_XLICERRORTYPE_PARAMETER,ICAL_XLICERRORTYPE_PROPERTYPARSEERROR,"PROPERTY-PARSE-ERROR"}, 197 {ICAL_XLICERRORTYPE_PARAMETER,ICAL_XLICERRORTYPE_PARAMETERNAMEPARSEERROR,"PARAMETER-NAME-PARSE-ERROR"}, 198 {ICAL_XLICERRORTYPE_PARAMETER,ICAL_XLICERRORTYPE_PARAMETERVALUEPARSEERROR,"PARAMETER-VALUE-PARSE-ERROR"}, 199 {ICAL_XLICERRORTYPE_PARAMETER,ICAL_XLICERRORTYPE_VALUEPARSEERROR,"VALUE-PARSE-ERROR"}, 200 {ICAL_XLICERRORTYPE_PARAMETER,ICAL_XLICERRORTYPE_INVALIDITIP,"INVALID-ITIP"}, 201 {ICAL_XLICERRORTYPE_PARAMETER,ICAL_XLICERRORTYPE_UNKNOWNVCALPROPERROR,"UNKNOWN-VCAL-PROP-ERROR"}, 202 {ICAL_XLICERRORTYPE_PARAMETER,ICAL_XLICERRORTYPE_MIMEPARSEERROR,"MIME-PARSE-ERROR"}, 203 {ICAL_XLICERRORTYPE_PARAMETER,ICAL_XLICERRORTYPE_VCALPROPPARSEERROR,"VCAL-PROP-PARSE-ERROR"}, 204 {ICAL_NO_PARAMETER,0,""}}; 205 206 /* ID */ 207 icalparameter* icalparameter_new_id(const char* v) 208 { 209 struct icalparameter_impl *impl; 210 icalerror_clear_errno(); 211 icalerror_check_arg_rz( (v!=0),"v"); 212 impl = icalparameter_new_impl(ICAL_ID_PARAMETER); 213 if (impl == 0) { 214 return 0; 215 } 216 217 icalparameter_set_id((icalparameter*) impl,v); 218 if (icalerrno != ICAL_NO_ERROR) { 219 icalparameter_free((icalparameter*) impl); 220 return 0; 221 } 222 223 return (icalparameter*) impl; 224 } 225 226 const char* icalparameter_get_id(const icalparameter* param) 227 { 228 icalerror_clear_errno(); 229 icalerror_check_arg_rz( (param!=0), "param"); 230 return param->string; 231 } 232 233 void icalparameter_set_id(icalparameter* param, const char* v) 234 { 235 icalerror_check_arg_rv( (v!=0),"v"); 236 icalerror_check_arg_rv( (param!=0), "param"); 237 icalerror_clear_errno(); 238 239 ((struct icalparameter_impl*)param)->string = icalmemory_strdup(v); 240 } 241 242 /* LOCALIZE */ 243 icalparameter* icalparameter_new_localize(const char* v) 244 { 245 struct icalparameter_impl *impl; 246 icalerror_clear_errno(); 247 icalerror_check_arg_rz( (v!=0),"v"); 248 impl = icalparameter_new_impl(ICAL_LOCALIZE_PARAMETER); 249 if (impl == 0) { 250 return 0; 251 } 252 253 icalparameter_set_localize((icalparameter*) impl,v); 254 if (icalerrno != ICAL_NO_ERROR) { 255 icalparameter_free((icalparameter*) impl); 256 return 0; 257 } 258 259 return (icalparameter*) impl; 260 } 261 262 const char* icalparameter_get_localize(const icalparameter* param) 263 { 264 icalerror_clear_errno(); 265 icalerror_check_arg_rz( (param!=0), "param"); 266 return param->string; 267 } 268 269 void icalparameter_set_localize(icalparameter* param, const char* v) 270 { 271 icalerror_check_arg_rv( (v!=0),"v"); 272 icalerror_check_arg_rv( (param!=0), "param"); 273 icalerror_clear_errno(); 274 275 ((struct icalparameter_impl*)param)->string = icalmemory_strdup(v); 276 } 277 278 /* LANGUAGE */ 279 icalparameter* icalparameter_new_language(const char* v) 280 { 281 struct icalparameter_impl *impl; 282 icalerror_clear_errno(); 283 icalerror_check_arg_rz( (v!=0),"v"); 284 impl = icalparameter_new_impl(ICAL_LANGUAGE_PARAMETER); 285 if (impl == 0) { 286 return 0; 287 } 288 289 icalparameter_set_language((icalparameter*) impl,v); 290 if (icalerrno != ICAL_NO_ERROR) { 291 icalparameter_free((icalparameter*) impl); 292 return 0; 293 } 294 295 return (icalparameter*) impl; 296 } 297 298 const char* icalparameter_get_language(const icalparameter* param) 299 { 300 icalerror_clear_errno(); 301 icalerror_check_arg_rz( (param!=0), "param"); 302 return param->string; 303 } 304 305 void icalparameter_set_language(icalparameter* param, const char* v) 306 { 307 icalerror_check_arg_rv( (v!=0),"v"); 308 icalerror_check_arg_rv( (param!=0), "param"); 309 icalerror_clear_errno(); 310 311 ((struct icalparameter_impl*)param)->string = icalmemory_strdup(v); 312 } 313 314 /* DIR */ 315 icalparameter* icalparameter_new_dir(const char* v) 316 { 317 struct icalparameter_impl *impl; 318 icalerror_clear_errno(); 319 icalerror_check_arg_rz( (v!=0),"v"); 320 impl = icalparameter_new_impl(ICAL_DIR_PARAMETER); 321 if (impl == 0) { 322 return 0; 323 } 324 325 icalparameter_set_dir((icalparameter*) impl,v); 326 if (icalerrno != ICAL_NO_ERROR) { 327 icalparameter_free((icalparameter*) impl); 328 return 0; 329 } 330 331 return (icalparameter*) impl; 332 } 333 334 const char* icalparameter_get_dir(const icalparameter* param) 335 { 336 icalerror_clear_errno(); 337 icalerror_check_arg_rz( (param!=0), "param"); 338 return param->string; 339 } 340 341 void icalparameter_set_dir(icalparameter* param, const char* v) 342 { 343 icalerror_check_arg_rv( (v!=0),"v"); 344 icalerror_check_arg_rv( (param!=0), "param"); 345 icalerror_clear_errno(); 346 347 ((struct icalparameter_impl*)param)->string = icalmemory_strdup(v); 348 } 349 350 /* RELTYPE */ 351 icalparameter* icalparameter_new_reltype(icalparameter_reltype v) 352 { 353 struct icalparameter_impl *impl; 354 icalerror_clear_errno(); 355 icalerror_check_arg_rz(v >= ICAL_RELTYPE_X,"v"); 356 icalerror_check_arg_rz(v < ICAL_RELTYPE_NONE,"v"); 357 impl = icalparameter_new_impl(ICAL_RELTYPE_PARAMETER); 358 if (impl == 0) { 359 return 0; 360 } 361 362 icalparameter_set_reltype((icalparameter*) impl,v); 363 if (icalerrno != ICAL_NO_ERROR) { 364 icalparameter_free((icalparameter*) impl); 365 return 0; 366 } 367 368 return (icalparameter*) impl; 369 } 370 371 icalparameter_reltype icalparameter_get_reltype(const icalparameter* param) 372 { 373 icalerror_clear_errno(); 374 icalerror_check_arg( (param!=0), "param"); 375 if (param->string != 0){ 376 return ICAL_RELTYPE_X; 377 } 378 379 return (icalparameter_reltype)(param->data); 380 } 381 382 void icalparameter_set_reltype(icalparameter* param, icalparameter_reltype v) 383 { 384 icalerror_check_arg_rv(v >= ICAL_RELTYPE_X,"v"); 385 icalerror_check_arg_rv(v < ICAL_RELTYPE_NONE,"v"); 386 icalerror_check_arg_rv( (param!=0), "param"); 387 icalerror_clear_errno(); 388 389 ((struct icalparameter_impl*)param)->data = (int)v; 390 } 391 392 /* FMTTYPE */ 393 icalparameter* icalparameter_new_fmttype(const char* v) 394 { 395 struct icalparameter_impl *impl; 396 icalerror_clear_errno(); 397 icalerror_check_arg_rz( (v!=0),"v"); 398 impl = icalparameter_new_impl(ICAL_FMTTYPE_PARAMETER); 399 if (impl == 0) { 400 return 0; 401 } 402 403 icalparameter_set_fmttype((icalparameter*) impl,v); 404 if (icalerrno != ICAL_NO_ERROR) { 405 icalparameter_free((icalparameter*) impl); 406 return 0; 407 } 408 409 return (icalparameter*) impl; 410 } 411 412 const char* icalparameter_get_fmttype(const icalparameter* param) 413 { 414 icalerror_clear_errno(); 415 icalerror_check_arg_rz( (param!=0), "param"); 416 return param->string; 417 } 418 419 void icalparameter_set_fmttype(icalparameter* param, const char* v) 420 { 421 icalerror_check_arg_rv( (v!=0),"v"); 422 icalerror_check_arg_rv( (param!=0), "param"); 423 icalerror_clear_errno(); 424 425 ((struct icalparameter_impl*)param)->string = icalmemory_strdup(v); 426 } 427 428 /* OPTIONS */ 429 icalparameter* icalparameter_new_options(const char* v) 430 { 431 struct icalparameter_impl *impl; 432 icalerror_clear_errno(); 433 icalerror_check_arg_rz( (v!=0),"v"); 434 impl = icalparameter_new_impl(ICAL_OPTIONS_PARAMETER); 435 if (impl == 0) { 436 return 0; 437 } 438 439 icalparameter_set_options((icalparameter*) impl,v); 440 if (icalerrno != ICAL_NO_ERROR) { 441 icalparameter_free((icalparameter*) impl); 442 return 0; 443 } 444 445 return (icalparameter*) impl; 446 } 447 448 const char* icalparameter_get_options(const icalparameter* param) 449 { 450 icalerror_clear_errno(); 451 icalerror_check_arg_rz( (param!=0), "param"); 452 return param->string; 453 } 454 455 void icalparameter_set_options(icalparameter* param, const char* v) 456 { 457 icalerror_check_arg_rv( (v!=0),"v"); 458 icalerror_check_arg_rv( (param!=0), "param"); 459 icalerror_clear_errno(); 460 461 ((struct icalparameter_impl*)param)->string = icalmemory_strdup(v); 462 } 463 464 /* TZID */ 465 icalparameter* icalparameter_new_tzid(const char* v) 466 { 467 struct icalparameter_impl *impl; 468 icalerror_clear_errno(); 469 icalerror_check_arg_rz( (v!=0),"v"); 470 impl = icalparameter_new_impl(ICAL_TZID_PARAMETER); 471 if (impl == 0) { 472 return 0; 473 } 474 475 icalparameter_set_tzid((icalparameter*) impl,v); 476 if (icalerrno != ICAL_NO_ERROR) { 477 icalparameter_free((icalparameter*) impl); 478 return 0; 479 } 480 481 return (icalparameter*) impl; 482 } 483 484 const char* icalparameter_get_tzid(const icalparameter* param) 485 { 486 icalerror_clear_errno(); 487 icalerror_check_arg_rz( (param!=0), "param"); 488 return param->string; 489 } 490 491 void icalparameter_set_tzid(icalparameter* param, const char* v) 492 { 493 icalerror_check_arg_rv( (v!=0),"v"); 494 icalerror_check_arg_rv( (param!=0), "param"); 495 icalerror_clear_errno(); 496 497 ((struct icalparameter_impl*)param)->string = icalmemory_strdup(v); 498 } 499 500 /* ENABLE */ 501 icalparameter* icalparameter_new_enable(icalparameter_enable v) 502 { 503 struct icalparameter_impl *impl; 504 icalerror_clear_errno(); 505 icalerror_check_arg_rz(v >= ICAL_ENABLE_X,"v"); 506 icalerror_check_arg_rz(v < ICAL_ENABLE_NONE,"v"); 507 impl = icalparameter_new_impl(ICAL_ENABLE_PARAMETER); 508 if (impl == 0) { 509 return 0; 510 } 511 512 icalparameter_set_enable((icalparameter*) impl,v); 513 if (icalerrno != ICAL_NO_ERROR) { 514 icalparameter_free((icalparameter*) impl); 515 return 0; 516 } 517 518 return (icalparameter*) impl; 519 } 520 521 icalparameter_enable icalparameter_get_enable(const icalparameter* param) 522 { 523 icalerror_clear_errno(); 524 icalerror_check_arg( (param!=0), "param"); 525 if (param->string != 0){ 526 return ICAL_ENABLE_X; 527 } 528 529 return (icalparameter_enable)(param->data); 530 } 531 532 void icalparameter_set_enable(icalparameter* param, icalparameter_enable v) 533 { 534 icalerror_check_arg_rv(v >= ICAL_ENABLE_X,"v"); 535 icalerror_check_arg_rv(v < ICAL_ENABLE_NONE,"v"); 536 icalerror_check_arg_rv( (param!=0), "param"); 537 icalerror_clear_errno(); 538 539 ((struct icalparameter_impl*)param)->data = (int)v; 540 } 541 542 /* RANGE */ 543 icalparameter* icalparameter_new_range(icalparameter_range v) 544 { 545 struct icalparameter_impl *impl; 546 icalerror_clear_errno(); 547 icalerror_check_arg_rz(v >= ICAL_RANGE_X,"v"); 548 icalerror_check_arg_rz(v < ICAL_RANGE_NONE,"v"); 549 impl = icalparameter_new_impl(ICAL_RANGE_PARAMETER); 550 if (impl == 0) { 551 return 0; 552 } 553 554 icalparameter_set_range((icalparameter*) impl,v); 555 if (icalerrno != ICAL_NO_ERROR) { 556 icalparameter_free((icalparameter*) impl); 557 return 0; 558 } 559 560 return (icalparameter*) impl; 561 } 562 563 icalparameter_range icalparameter_get_range(const icalparameter* param) 564 { 565 icalerror_clear_errno(); 566 icalerror_check_arg( (param!=0), "param"); 567 568 return (icalparameter_range)(param->data); 569 } 570 571 void icalparameter_set_range(icalparameter* param, icalparameter_range v) 572 { 573 icalerror_check_arg_rv(v >= ICAL_RANGE_X,"v"); 574 icalerror_check_arg_rv(v < ICAL_RANGE_NONE,"v"); 575 icalerror_check_arg_rv( (param!=0), "param"); 576 icalerror_clear_errno(); 577 578 ((struct icalparameter_impl*)param)->data = (int)v; 579 } 580 581 /* LATENCY */ 582 icalparameter* icalparameter_new_latency(const char* v) 583 { 584 struct icalparameter_impl *impl; 585 icalerror_clear_errno(); 586 icalerror_check_arg_rz( (v!=0),"v"); 587 impl = icalparameter_new_impl(ICAL_LATENCY_PARAMETER); 588 if (impl == 0) { 589 return 0; 590 } 591 592 icalparameter_set_latency((icalparameter*) impl,v); 593 if (icalerrno != ICAL_NO_ERROR) { 594 icalparameter_free((icalparameter*) impl); 595 return 0; 596 } 597 598 return (icalparameter*) impl; 599 } 600 601 const char* icalparameter_get_latency(const icalparameter* param) 602 { 603 icalerror_clear_errno(); 604 icalerror_check_arg_rz( (param!=0), "param"); 605 return param->string; 606 } 607 608 void icalparameter_set_latency(icalparameter* param, const char* v) 609 { 610 icalerror_check_arg_rv( (v!=0),"v"); 611 icalerror_check_arg_rv( (param!=0), "param"); 612 icalerror_clear_errno(); 613 614 ((struct icalparameter_impl*)param)->string = icalmemory_strdup(v); 615 } 616 617 /* DELEGATED-TO */ 618 icalparameter* icalparameter_new_delegatedto(const char* v) 619 { 620 struct icalparameter_impl *impl; 621 icalerror_clear_errno(); 622 icalerror_check_arg_rz( (v!=0),"v"); 623 impl = icalparameter_new_impl(ICAL_DELEGATEDTO_PARAMETER); 624 if (impl == 0) { 625 return 0; 626 } 627 628 icalparameter_set_delegatedto((icalparameter*) impl,v); 629 if (icalerrno != ICAL_NO_ERROR) { 630 icalparameter_free((icalparameter*) impl); 631 return 0; 632 } 633 634 return (icalparameter*) impl; 635 } 636 637 const char* icalparameter_get_delegatedto(const icalparameter* param) 638 { 639 icalerror_clear_errno(); 640 icalerror_check_arg_rz( (param!=0), "param"); 641 return param->string; 642 } 643 644 void icalparameter_set_delegatedto(icalparameter* param, const char* v) 645 { 646 icalerror_check_arg_rv( (v!=0),"v"); 647 icalerror_check_arg_rv( (param!=0), "param"); 648 icalerror_clear_errno(); 649 650 ((struct icalparameter_impl*)param)->string = icalmemory_strdup(v); 651 } 652 653 /* LOCAL */ 654 icalparameter* icalparameter_new_local(icalparameter_local v) 655 { 656 struct icalparameter_impl *impl; 657 icalerror_clear_errno(); 658 icalerror_check_arg_rz(v >= ICAL_LOCAL_X,"v"); 659 icalerror_check_arg_rz(v < ICAL_LOCAL_NONE,"v"); 660 impl = icalparameter_new_impl(ICAL_LOCAL_PARAMETER); 661 if (impl == 0) { 662 return 0; 663 } 664 665 icalparameter_set_local((icalparameter*) impl,v); 666 if (icalerrno != ICAL_NO_ERROR) { 667 icalparameter_free((icalparameter*) impl); 668 return 0; 669 } 670 671 return (icalparameter*) impl; 672 } 673 674 icalparameter_local icalparameter_get_local(const icalparameter* param) 675 { 676 icalerror_clear_errno(); 677 icalerror_check_arg( (param!=0), "param"); 678 if (param->string != 0){ 679 return ICAL_LOCAL_X; 680 } 681 682 return (icalparameter_local)(param->data); 683 } 684 685 void icalparameter_set_local(icalparameter* param, icalparameter_local v) 686 { 687 icalerror_check_arg_rv(v >= ICAL_LOCAL_X,"v"); 688 icalerror_check_arg_rv(v < ICAL_LOCAL_NONE,"v"); 689 icalerror_check_arg_rv( (param!=0), "param"); 690 icalerror_clear_errno(); 691 692 ((struct icalparameter_impl*)param)->data = (int)v; 693 } 694 695 /* CN */ 696 icalparameter* icalparameter_new_cn(const char* v) 697 { 698 struct icalparameter_impl *impl; 699 icalerror_clear_errno(); 700 icalerror_check_arg_rz( (v!=0),"v"); 701 impl = icalparameter_new_impl(ICAL_CN_PARAMETER); 702 if (impl == 0) { 703 return 0; 704 } 705 706 icalparameter_set_cn((icalparameter*) impl,v); 707 if (icalerrno != ICAL_NO_ERROR) { 708 icalparameter_free((icalparameter*) impl); 709 return 0; 710 } 711 712 return (icalparameter*) impl; 713 } 714 715 const char* icalparameter_get_cn(const icalparameter* param) 716 { 717 icalerror_clear_errno(); 718 icalerror_check_arg_rz( (param!=0), "param"); 719 return param->string; 720 } 721 722 void icalparameter_set_cn(icalparameter* param, const char* v) 723 { 724 icalerror_check_arg_rv( (v!=0),"v"); 725 icalerror_check_arg_rv( (param!=0), "param"); 726 icalerror_clear_errno(); 727 728 ((struct icalparameter_impl*)param)->string = icalmemory_strdup(v); 729 } 730 731 /* CHARSET */ 732 icalparameter* icalparameter_new_charset(const char* v) 733 { 734 struct icalparameter_impl *impl; 735 icalerror_clear_errno(); 736 icalerror_check_arg_rz( (v!=0),"v"); 737 impl = icalparameter_new_impl(ICAL_CHARSET_PARAMETER); 738 if (impl == 0) { 739 return 0; 740 } 741 742 icalparameter_set_charset((icalparameter*) impl,v); 743 if (icalerrno != ICAL_NO_ERROR) { 744 icalparameter_free((icalparameter*) impl); 745 return 0; 746 } 747 748 return (icalparameter*) impl; 749 } 750 751 const char* icalparameter_get_charset(const icalparameter* param) 752 { 753 icalerror_clear_errno(); 754 icalerror_check_arg_rz( (param!=0), "param"); 755 return param->string; 756 } 757 758 void icalparameter_set_charset(icalparameter* param, const char* v) 759 { 760 icalerror_check_arg_rv( (v!=0),"v"); 761 icalerror_check_arg_rv( (param!=0), "param"); 762 icalerror_clear_errno(); 763 764 ((struct icalparameter_impl*)param)->string = icalmemory_strdup(v); 765 } 766 767 /* ACTIONPARAM */ 768 icalparameter* icalparameter_new_actionparam(icalparameter_action v) 769 { 770 struct icalparameter_impl *impl; 771 icalerror_clear_errno(); 772 icalerror_check_arg_rz(v >= ICAL_ACTIONPARAM_X,"v"); 773 icalerror_check_arg_rz(v < ICAL_ACTIONPARAM_NONE,"v"); 774 impl = icalparameter_new_impl(ICAL_ACTIONPARAM_PARAMETER); 775 if (impl == 0) { 776 return 0; 777 } 778 779 icalparameter_set_actionparam((icalparameter*) impl,v); 780 if (icalerrno != ICAL_NO_ERROR) { 781 icalparameter_free((icalparameter*) impl); 782 return 0; 783 } 784 785 return (icalparameter*) impl; 786 } 787 788 icalparameter_action icalparameter_get_actionparam(const icalparameter* param) 789 { 790 icalerror_clear_errno(); 791 icalerror_check_arg( (param!=0), "param"); 792 if (param->string != 0){ 793 return ICAL_ACTIONPARAM_X; 794 } 795 796 return (icalparameter_action)(param->data); 797 } 798 799 void icalparameter_set_actionparam(icalparameter* param, icalparameter_action v) 800 { 801 icalerror_check_arg_rv(v >= ICAL_ACTIONPARAM_X,"v"); 802 icalerror_check_arg_rv(v < ICAL_ACTIONPARAM_NONE,"v"); 803 icalerror_check_arg_rv( (param!=0), "param"); 804 icalerror_clear_errno(); 805 806 ((struct icalparameter_impl*)param)->data = (int)v; 807 } 808 809 /* VALUE */ 810 icalparameter* icalparameter_new_value(icalparameter_value v) 811 { 812 struct icalparameter_impl *impl; 813 icalerror_clear_errno(); 814 icalerror_check_arg_rz(v >= ICAL_VALUE_X,"v"); 815 icalerror_check_arg_rz(v < ICAL_VALUE_NONE,"v"); 816 impl = icalparameter_new_impl(ICAL_VALUE_PARAMETER); 817 if (impl == 0) { 818 return 0; 819 } 820 821 icalparameter_set_value((icalparameter*) impl,v); 822 if (icalerrno != ICAL_NO_ERROR) { 823 icalparameter_free((icalparameter*) impl); 824 return 0; 825 } 826 827 return (icalparameter*) impl; 828 } 829 830 icalparameter_value icalparameter_get_value(const icalparameter* param) 831 { 832 icalerror_clear_errno(); 833 icalerror_check_arg( (param!=0), "param"); 834 if (param->string != 0){ 835 return ICAL_VALUE_X; 836 } 837 838 return (icalparameter_value)(param->data); 839 } 840 841 void icalparameter_set_value(icalparameter* param, icalparameter_value v) 842 { 843 icalerror_check_arg_rv(v >= ICAL_VALUE_X,"v"); 844 icalerror_check_arg_rv(v < ICAL_VALUE_NONE,"v"); 845 icalerror_check_arg_rv( (param!=0), "param"); 846 icalerror_clear_errno(); 847 848 ((struct icalparameter_impl*)param)->data = (int)v; 849 } 850 851 /* X-LIC-COMPARETYPE */ 852 icalparameter* icalparameter_new_xliccomparetype(icalparameter_xliccomparetype v) 853 { 854 struct icalparameter_impl *impl; 855 icalerror_clear_errno(); 856 icalerror_check_arg_rz(v >= ICAL_XLICCOMPARETYPE_X,"v"); 857 icalerror_check_arg_rz(v < ICAL_XLICCOMPARETYPE_NONE,"v"); 858 impl = icalparameter_new_impl(ICAL_XLICCOMPARETYPE_PARAMETER); 859 if (impl == 0) { 860 return 0; 861 } 862 863 icalparameter_set_xliccomparetype((icalparameter*) impl,v); 864 if (icalerrno != ICAL_NO_ERROR) { 865 icalparameter_free((icalparameter*) impl); 866 return 0; 867 } 868 869 return (icalparameter*) impl; 870 } 871 872 icalparameter_xliccomparetype icalparameter_get_xliccomparetype(const icalparameter* param) 873 { 874 icalerror_clear_errno(); 875 icalerror_check_arg( (param!=0), "param"); 876 877 return (icalparameter_xliccomparetype)(param->data); 878 } 879 880 void icalparameter_set_xliccomparetype(icalparameter* param, icalparameter_xliccomparetype v) 881 { 882 icalerror_check_arg_rv(v >= ICAL_XLICCOMPARETYPE_X,"v"); 883 icalerror_check_arg_rv(v < ICAL_XLICCOMPARETYPE_NONE,"v"); 884 icalerror_check_arg_rv( (param!=0), "param"); 885 icalerror_clear_errno(); 886 887 ((struct icalparameter_impl*)param)->data = (int)v; 888 } 889 890 /* X */ 891 icalparameter* icalparameter_new_x(const char* v) 892 { 893 struct icalparameter_impl *impl; 894 icalerror_clear_errno(); 895 icalerror_check_arg_rz( (v!=0),"v"); 896 impl = icalparameter_new_impl(ICAL_X_PARAMETER); 897 if (impl == 0) { 898 return 0; 899 } 900 901 icalparameter_set_x((icalparameter*) impl,v); 902 if (icalerrno != ICAL_NO_ERROR) { 903 icalparameter_free((icalparameter*) impl); 904 return 0; 905 } 906 907 return (icalparameter*) impl; 908 } 909 910 const char* icalparameter_get_x(const icalparameter* param) 911 { 912 icalerror_clear_errno(); 913 icalerror_check_arg_rz( (param!=0), "param"); 914 return param->string; 915 } 916 917 void icalparameter_set_x(icalparameter* param, const char* v) 918 { 919 icalerror_check_arg_rv( (v!=0),"v"); 920 icalerror_check_arg_rv( (param!=0), "param"); 921 icalerror_clear_errno(); 922 923 ((struct icalparameter_impl*)param)->string = icalmemory_strdup(v); 924 } 925 926 /* MEMBER */ 927 icalparameter* icalparameter_new_member(const char* v) 928 { 929 struct icalparameter_impl *impl; 930 icalerror_clear_errno(); 931 icalerror_check_arg_rz( (v!=0),"v"); 932 impl = icalparameter_new_impl(ICAL_MEMBER_PARAMETER); 933 if (impl == 0) { 934 return 0; 935 } 936 937 icalparameter_set_member((icalparameter*) impl,v); 938 if (icalerrno != ICAL_NO_ERROR) { 939 icalparameter_free((icalparameter*) impl); 940 return 0; 941 } 942 943 return (icalparameter*) impl; 944 } 945 946 const char* icalparameter_get_member(const icalparameter* param) 947 { 948 icalerror_clear_errno(); 949 icalerror_check_arg_rz( (param!=0), "param"); 950 return param->string; 951 } 952 953 void icalparameter_set_member(icalparameter* param, const char* v) 954 { 955 icalerror_check_arg_rv( (v!=0),"v"); 956 icalerror_check_arg_rv( (param!=0), "param"); 957 icalerror_clear_errno(); 958 959 ((struct icalparameter_impl*)param)->string = icalmemory_strdup(v); 960 } 961 962 /* SENT-BY */ 963 icalparameter* icalparameter_new_sentby(const char* v) 964 { 965 struct icalparameter_impl *impl; 966 icalerror_clear_errno(); 967 icalerror_check_arg_rz( (v!=0),"v"); 968 impl = icalparameter_new_impl(ICAL_SENTBY_PARAMETER); 969 if (impl == 0) { 970 return 0; 971 } 972 973 icalparameter_set_sentby((icalparameter*) impl,v); 974 if (icalerrno != ICAL_NO_ERROR) { 975 icalparameter_free((icalparameter*) impl); 976 return 0; 977 } 978 979 return (icalparameter*) impl; 980 } 981 982 const char* icalparameter_get_sentby(const icalparameter* param) 983 { 984 icalerror_clear_errno(); 985 icalerror_check_arg_rz( (param!=0), "param"); 986 return param->string; 987 } 988 989 void icalparameter_set_sentby(icalparameter* param, const char* v) 990 { 991 icalerror_check_arg_rv( (v!=0),"v"); 992 icalerror_check_arg_rv( (param!=0), "param"); 993 icalerror_clear_errno(); 994 995 ((struct icalparameter_impl*)param)->string = icalmemory_strdup(v); 996 } 997 998 /* CUTYPE */ 999 icalparameter* icalparameter_new_cutype(icalparameter_cutype v) 1000 { 1001 struct icalparameter_impl *impl; 1002 icalerror_clear_errno(); 1003 icalerror_check_arg_rz(v >= ICAL_CUTYPE_X,"v"); 1004 icalerror_check_arg_rz(v < ICAL_CUTYPE_NONE,"v"); 1005 impl = icalparameter_new_impl(ICAL_CUTYPE_PARAMETER); 1006 if (impl == 0) { 1007 return 0; 1008 } 1009 1010 icalparameter_set_cutype((icalparameter*) impl,v); 1011 if (icalerrno != ICAL_NO_ERROR) { 1012 icalparameter_free((icalparameter*) impl); 1013 return 0; 1014 } 1015 1016 return (icalparameter*) impl; 1017 } 1018 1019 icalparameter_cutype icalparameter_get_cutype(const icalparameter* param) 1020 { 1021 icalerror_clear_errno(); 1022 icalerror_check_arg( (param!=0), "param"); 1023 if (param->string != 0){ 1024 return ICAL_CUTYPE_X; 1025 } 1026 1027 return (icalparameter_cutype)(param->data); 1028 } 1029 1030 void icalparameter_set_cutype(icalparameter* param, icalparameter_cutype v) 1031 { 1032 icalerror_check_arg_rv(v >= ICAL_CUTYPE_X,"v"); 1033 icalerror_check_arg_rv(v < ICAL_CUTYPE_NONE,"v"); 1034 icalerror_check_arg_rv( (param!=0), "param"); 1035 icalerror_clear_errno(); 1036 1037 ((struct icalparameter_impl*)param)->data = (int)v; 1038 } 1039 1040 /* RSVP */ 1041 icalparameter* icalparameter_new_rsvp(icalparameter_rsvp v) 1042 { 1043 struct icalparameter_impl *impl; 1044 icalerror_clear_errno(); 1045 icalerror_check_arg_rz(v >= ICAL_RSVP_X,"v"); 1046 icalerror_check_arg_rz(v < ICAL_RSVP_NONE,"v"); 1047 impl = icalparameter_new_impl(ICAL_RSVP_PARAMETER); 1048 if (impl == 0) { 1049 return 0; 1050 } 1051 1052 icalparameter_set_rsvp((icalparameter*) impl,v); 1053 if (icalerrno != ICAL_NO_ERROR) { 1054 icalparameter_free((icalparameter*) impl); 1055 return 0; 1056 } 1057 1058 return (icalparameter*) impl; 1059 } 1060 1061 icalparameter_rsvp icalparameter_get_rsvp(const icalparameter* param) 1062 { 1063 icalerror_clear_errno(); 1064 icalerror_check_arg( (param!=0), "param"); 1065 1066 return (icalparameter_rsvp)(param->data); 1067 } 1068 1069 void icalparameter_set_rsvp(icalparameter* param, icalparameter_rsvp v) 1070 { 1071 icalerror_check_arg_rv(v >= ICAL_RSVP_X,"v"); 1072 icalerror_check_arg_rv(v < ICAL_RSVP_NONE,"v"); 1073 icalerror_check_arg_rv( (param!=0), "param"); 1074 icalerror_clear_errno(); 1075 1076 ((struct icalparameter_impl*)param)->data = (int)v; 1077 } 1078 1079 /* RELATED */ 1080 icalparameter* icalparameter_new_related(icalparameter_related v) 1081 { 1082 struct icalparameter_impl *impl; 1083 icalerror_clear_errno(); 1084 icalerror_check_arg_rz(v >= ICAL_RELATED_X,"v"); 1085 icalerror_check_arg_rz(v < ICAL_RELATED_NONE,"v"); 1086 impl = icalparameter_new_impl(ICAL_RELATED_PARAMETER); 1087 if (impl == 0) { 1088 return 0; 1089 } 1090 1091 icalparameter_set_related((icalparameter*) impl,v); 1092 if (icalerrno != ICAL_NO_ERROR) { 1093 icalparameter_free((icalparameter*) impl); 1094 return 0; 1095 } 1096 1097 return (icalparameter*) impl; 1098 } 1099 1100 icalparameter_related icalparameter_get_related(const icalparameter* param) 1101 { 1102 icalerror_clear_errno(); 1103 icalerror_check_arg( (param!=0), "param"); 1104 1105 return (icalparameter_related)(param->data); 1106 } 1107 1108 void icalparameter_set_related(icalparameter* param, icalparameter_related v) 1109 { 1110 icalerror_check_arg_rv(v >= ICAL_RELATED_X,"v"); 1111 icalerror_check_arg_rv(v < ICAL_RELATED_NONE,"v"); 1112 icalerror_check_arg_rv( (param!=0), "param"); 1113 icalerror_clear_errno(); 1114 1115 ((struct icalparameter_impl*)param)->data = (int)v; 1116 } 1117 1118 /* X-LIC-ERRORTYPE */ 1119 icalparameter* icalparameter_new_xlicerrortype(icalparameter_xlicerrortype v) 1120 { 1121 struct icalparameter_impl *impl; 1122 icalerror_clear_errno(); 1123 icalerror_check_arg_rz(v >= ICAL_XLICERRORTYPE_X,"v"); 1124 icalerror_check_arg_rz(v < ICAL_XLICERRORTYPE_NONE,"v"); 1125 impl = icalparameter_new_impl(ICAL_XLICERRORTYPE_PARAMETER); 1126 if (impl == 0) { 1127 return 0; 1128 } 1129 1130 icalparameter_set_xlicerrortype((icalparameter*) impl,v); 1131 if (icalerrno != ICAL_NO_ERROR) { 1132 icalparameter_free((icalparameter*) impl); 1133 return 0; 1134 } 1135 1136 return (icalparameter*) impl; 1137 } 1138 1139 icalparameter_xlicerrortype icalparameter_get_xlicerrortype(const icalparameter* param) 1140 { 1141 icalerror_clear_errno(); 1142 icalerror_check_arg( (param!=0), "param"); 1143 1144 return (icalparameter_xlicerrortype)(param->data); 1145 } 1146 1147 void icalparameter_set_xlicerrortype(icalparameter* param, icalparameter_xlicerrortype v) 1148 { 1149 icalerror_check_arg_rv(v >= ICAL_XLICERRORTYPE_X,"v"); 1150 icalerror_check_arg_rv(v < ICAL_XLICERRORTYPE_NONE,"v"); 1151 icalerror_check_arg_rv( (param!=0), "param"); 1152 icalerror_clear_errno(); 1153 1154 ((struct icalparameter_impl*)param)->data = (int)v; 1155 } 1156 1157 /* ENCODING */ 1158 icalparameter* icalparameter_new_encoding(icalparameter_encoding v) 1159 { 1160 struct icalparameter_impl *impl; 1161 icalerror_clear_errno(); 1162 icalerror_check_arg_rz(v >= ICAL_ENCODING_X,"v"); 1163 icalerror_check_arg_rz(v < ICAL_ENCODING_NONE,"v"); 1164 impl = icalparameter_new_impl(ICAL_ENCODING_PARAMETER); 1165 if (impl == 0) { 1166 return 0; 1167 } 1168 1169 icalparameter_set_encoding((icalparameter*) impl,v); 1170 if (icalerrno != ICAL_NO_ERROR) { 1171 icalparameter_free((icalparameter*) impl); 1172 return 0; 1173 } 1174 1175 return (icalparameter*) impl; 1176 } 1177 1178 icalparameter_encoding icalparameter_get_encoding(const icalparameter* param) 1179 { 1180 icalerror_clear_errno(); 1181 icalerror_check_arg( (param!=0), "param"); 1182 if (param->string != 0){ 1183 return ICAL_ENCODING_X; 1184 } 1185 1186 return (icalparameter_encoding)(param->data); 1187 } 1188 1189 void icalparameter_set_encoding(icalparameter* param, icalparameter_encoding v) 1190 { 1191 icalerror_check_arg_rv(v >= ICAL_ENCODING_X,"v"); 1192 icalerror_check_arg_rv(v < ICAL_ENCODING_NONE,"v"); 1193 icalerror_check_arg_rv( (param!=0), "param"); 1194 icalerror_clear_errno(); 1195 1196 ((struct icalparameter_impl*)param)->data = (int)v; 1197 } 1198 1199 /* ALTREP */ 1200 icalparameter* icalparameter_new_altrep(const char* v) 1201 { 1202 struct icalparameter_impl *impl; 1203 icalerror_clear_errno(); 1204 icalerror_check_arg_rz( (v!=0),"v"); 1205 impl = icalparameter_new_impl(ICAL_ALTREP_PARAMETER); 1206 if (impl == 0) { 1207 return 0; 1208 } 1209 1210 icalparameter_set_altrep((icalparameter*) impl,v); 1211 if (icalerrno != ICAL_NO_ERROR) { 1212 icalparameter_free((icalparameter*) impl); 1213 return 0; 1214 } 1215 1216 return (icalparameter*) impl; 1217 } 1218 1219 const char* icalparameter_get_altrep(const icalparameter* param) 1220 { 1221 icalerror_clear_errno(); 1222 icalerror_check_arg_rz( (param!=0), "param"); 1223 return param->string; 1224 } 1225 1226 void icalparameter_set_altrep(icalparameter* param, const char* v) 1227 { 1228 icalerror_check_arg_rv( (v!=0),"v"); 1229 icalerror_check_arg_rv( (param!=0), "param"); 1230 icalerror_clear_errno(); 1231 1232 ((struct icalparameter_impl*)param)->string = icalmemory_strdup(v); 1233 } 1234 1235 /* DELEGATED-FROM */ 1236 icalparameter* icalparameter_new_delegatedfrom(const char* v) 1237 { 1238 struct icalparameter_impl *impl; 1239 icalerror_clear_errno(); 1240 icalerror_check_arg_rz( (v!=0),"v"); 1241 impl = icalparameter_new_impl(ICAL_DELEGATEDFROM_PARAMETER); 1242 if (impl == 0) { 1243 return 0; 1244 } 1245 1246 icalparameter_set_delegatedfrom((icalparameter*) impl,v); 1247 if (icalerrno != ICAL_NO_ERROR) { 1248 icalparameter_free((icalparameter*) impl); 1249 return 0; 1250 } 1251 1252 return (icalparameter*) impl; 1253 } 1254 1255 const char* icalparameter_get_delegatedfrom(const icalparameter* param) 1256 { 1257 icalerror_clear_errno(); 1258 icalerror_check_arg_rz( (param!=0), "param"); 1259 return param->string; 1260 } 1261 1262 void icalparameter_set_delegatedfrom(icalparameter* param, const char* v) 1263 { 1264 icalerror_check_arg_rv( (v!=0),"v"); 1265 icalerror_check_arg_rv( (param!=0), "param"); 1266 icalerror_clear_errno(); 1267 1268 ((struct icalparameter_impl*)param)->string = icalmemory_strdup(v); 1269 } 1270 1271 /* FBTYPE */ 1272 icalparameter* icalparameter_new_fbtype(icalparameter_fbtype v) 1273 { 1274 struct icalparameter_impl *impl; 1275 icalerror_clear_errno(); 1276 icalerror_check_arg_rz(v >= ICAL_FBTYPE_X,"v"); 1277 icalerror_check_arg_rz(v < ICAL_FBTYPE_NONE,"v"); 1278 impl = icalparameter_new_impl(ICAL_FBTYPE_PARAMETER); 1279 if (impl == 0) { 1280 return 0; 1281 } 1282 1283 icalparameter_set_fbtype((icalparameter*) impl,v); 1284 if (icalerrno != ICAL_NO_ERROR) { 1285 icalparameter_free((icalparameter*) impl); 1286 return 0; 1287 } 1288 1289 return (icalparameter*) impl; 1290 } 1291 1292 icalparameter_fbtype icalparameter_get_fbtype(const icalparameter* param) 1293 { 1294 icalerror_clear_errno(); 1295 icalerror_check_arg( (param!=0), "param"); 1296 if (param->string != 0){ 1297 return ICAL_FBTYPE_X; 1298 } 1299 1300 return (icalparameter_fbtype)(param->data); 1301 } 1302 1303 void icalparameter_set_fbtype(icalparameter* param, icalparameter_fbtype v) 1304 { 1305 icalerror_check_arg_rv(v >= ICAL_FBTYPE_X,"v"); 1306 icalerror_check_arg_rv(v < ICAL_FBTYPE_NONE,"v"); 1307 icalerror_check_arg_rv( (param!=0), "param"); 1308 icalerror_clear_errno(); 1309 1310 ((struct icalparameter_impl*)param)->data = (int)v; 1311 } 1312 1313 /* PARTSTAT */ 1314 icalparameter* icalparameter_new_partstat(icalparameter_partstat v) 1315 { 1316 struct icalparameter_impl *impl; 1317 icalerror_clear_errno(); 1318 icalerror_check_arg_rz(v >= ICAL_PARTSTAT_X,"v"); 1319 icalerror_check_arg_rz(v < ICAL_PARTSTAT_NONE,"v"); 1320 impl = icalparameter_new_impl(ICAL_PARTSTAT_PARAMETER); 1321 if (impl == 0) { 1322 return 0; 1323 } 1324 1325 icalparameter_set_partstat((icalparameter*) impl,v); 1326 if (icalerrno != ICAL_NO_ERROR) { 1327 icalparameter_free((icalparameter*) impl); 1328 return 0; 1329 } 1330 1331 return (icalparameter*) impl; 1332 } 1333 1334 icalparameter_partstat icalparameter_get_partstat(const icalparameter* param) 1335 { 1336 icalerror_clear_errno(); 1337 icalerror_check_arg( (param!=0), "param"); 1338 if (param->string != 0){ 1339 return ICAL_PARTSTAT_X; 1340 } 1341 1342 return (icalparameter_partstat)(param->data); 1343 } 1344 1345 void icalparameter_set_partstat(icalparameter* param, icalparameter_partstat v) 1346 { 1347 icalerror_check_arg_rv(v >= ICAL_PARTSTAT_X,"v"); 1348 icalerror_check_arg_rv(v < ICAL_PARTSTAT_NONE,"v"); 1349 icalerror_check_arg_rv( (param!=0), "param"); 1350 icalerror_clear_errno(); 1351 1352 ((struct icalparameter_impl*)param)->data = (int)v; 1353 } 1354 1355 /* ROLE */ 1356 icalparameter* icalparameter_new_role(icalparameter_role v) 1357 { 1358 struct icalparameter_impl *impl; 1359 icalerror_clear_errno(); 1360 icalerror_check_arg_rz(v >= ICAL_ROLE_X,"v"); 1361 icalerror_check_arg_rz(v < ICAL_ROLE_NONE,"v"); 1362 impl = icalparameter_new_impl(ICAL_ROLE_PARAMETER); 1363 if (impl == 0) { 1364 return 0; 1365 } 1366 1367 icalparameter_set_role((icalparameter*) impl,v); 1368 if (icalerrno != ICAL_NO_ERROR) { 1369 icalparameter_free((icalparameter*) impl); 1370 return 0; 1371 } 1372 1373 return (icalparameter*) impl; 1374 } 1375 1376 icalparameter_role icalparameter_get_role(const icalparameter* param) 1377 { 1378 icalerror_clear_errno(); 1379 icalerror_check_arg( (param!=0), "param"); 1380 if (param->string != 0){ 1381 return ICAL_ROLE_X; 1382 } 1383 1384 return (icalparameter_role)(param->data); 1385 } 1386 1387 void icalparameter_set_role(icalparameter* param, icalparameter_role v) 1388 { 1389 icalerror_check_arg_rv(v >= ICAL_ROLE_X,"v"); 1390 icalerror_check_arg_rv(v < ICAL_ROLE_NONE,"v"); 1391 icalerror_check_arg_rv( (param!=0), "param"); 1392 icalerror_clear_errno(); 1393 1394 ((struct icalparameter_impl*)param)->data = (int)v; 1395 } 1396 1397 1398 const char* icalparameter_kind_to_string(icalparameter_kind kind) 1399 { 1400 int i; 1401 1402 for (i=0; parameter_map[i].kind != ICAL_NO_PARAMETER; i++) { 1403 if (parameter_map[i].kind == kind) { 1404 return parameter_map[i].name; 1405 } 1406 } 1407 1408 return 0; 1409 1410 } 1411 1412 icalparameter_kind icalparameter_string_to_kind(const char* string) 1413 { 1414 int i; 1415 1416 if (string ==0 ) { 1417 return ICAL_NO_PARAMETER; 1418 } 1419 1420 for (i=0; parameter_map[i].kind != ICAL_NO_PARAMETER; i++) { 1421 1422 if (strcasecmp(parameter_map[i].name, string) == 0) { 1423 return parameter_map[i].kind; 1424 } 1425 } 1426 1427 if(strncmp(string,"X-",2)==0){ 1428 return ICAL_X_PARAMETER; 1429 } 1430 1431 return ICAL_NO_PARAMETER; 1432 } 1433 1434 1435 icalvalue_kind icalparameter_value_to_value_kind(icalparameter_value value) 1436 { 1437 int i; 1438 1439 for (i=0; value_kind_map[i].kind != ICAL_NO_VALUE; i++) { 1440 1441 if (value_kind_map[i].value == value) { 1442 return value_kind_map[i].kind; 1443 } 1444 } 1445 1446 return ICAL_NO_VALUE; 1447 } 1448 1449 1450 const char* icalparameter_enum_to_string(int e) 1451 { 1452 int i; 1453 1454 icalerror_check_arg_rz(e >= ICALPARAMETER_FIRST_ENUM,"e"); 1455 icalerror_check_arg_rz(e <= ICALPARAMETER_LAST_ENUM,"e"); 1456 1457 for (i=0; icalparameter_map[i].kind != ICAL_NO_PARAMETER; i++){ 1458 if(e == icalparameter_map[i].enumeration){ 1459 return icalparameter_map[i].str; 1460 } 1461 } 1462 1463 return 0; 1464 } 1465 1466 int icalparameter_string_to_enum(const char* str) 1467 { 1468 int i; 1469 1470 icalerror_check_arg_rz(str != 0,"str"); 1471 1472 for (i=0; icalparameter_map[i].kind != ICAL_NO_PARAMETER; i++){ 1473 if(strcasecmp(str,icalparameter_map[i].str) == 0) { 1474 return icalparameter_map[i].enumeration; 1475 } 1476 } 1477 1478 return 0; 1479 } 1480 1481 icalparameter* icalparameter_new_from_value_string(icalparameter_kind kind,const char* val) 1482 { 1483 1484 struct icalparameter_impl* param=0; 1485 int found_kind = 0; 1486 int i; 1487 1488 icalerror_check_arg_rz((val!=0),"val"); 1489 1490 /* Search through the parameter map to find a matching kind */ 1491 1492 param = icalparameter_new_impl(kind); 1493 if (!param) 1494 return 0; 1495 1496 for (i=0; icalparameter_map[i].kind != ICAL_NO_PARAMETER; i++){ 1497 if(kind == icalparameter_map[i].kind) { 1498 found_kind = 1; 1499 if(strcasecmp(val,icalparameter_map[i].str) == 0) { 1500 1501 param->data = (int)icalparameter_map[i].enumeration; 1502 return param; 1503 } 1504 } 1505 } 1506 1507 if(found_kind == 1){ 1508 /* The kind was in the parameter map, but the string did not 1509 match, so assume that it is an alternate value, like an 1510 X-value.*/ 1511 1512 icalparameter_set_xvalue(param, val); 1513 1514 } else { 1515 1516 /* If the kind was not found, then it must be a string type */ 1517 1518 ((struct icalparameter_impl*)param)->string = icalmemory_strdup(val); 1519 1520 } 1521 1522 return param; 1523 } 1524 1525 1526 1527 1528 /* Everything below this line is machine generated. Do not edit. */ -
src/libical/icalderivedparameter.h
diff -Nurb libical-0.42.orig/src/libical/icalderivedparameter.h libical-0.42/src/libical/icalderivedparameter.h
old new 1 /* -*- Mode: C -*- */ 2 /*====================================================================== 3 FILE: icalparam.h 4 CREATOR: eric 20 March 1999 5 6 7 $Id: icalderivedparameter.h.in,v 1.4 2007-04-30 13:57:48 artcancro Exp $ 8 $Locker: $ 9 10 11 12 (C) COPYRIGHT 2000, Eric Busboom, http://www.softwarestudio.org 13 14 This program is free software; you can redistribute it and/or modify 15 it under the terms of either: 16 17 The LGPL as published by the Free Software Foundation, version 18 2.1, available at: http://www.fsf.org/copyleft/lesser.html 19 20 Or: 21 22 The Mozilla Public License Version 1.0. You may obtain a copy of 23 the License at http://www.mozilla.org/MPL/ 24 25 The original code is icalparam.h 26 27 ======================================================================*/ 28 29 #ifndef ICALDERIVEDPARAMETER_H 30 #define ICALDERIVEDPARAMETER_H 31 32 33 typedef struct icalparameter_impl icalparameter; 34 35 const char* icalparameter_enum_to_string(int e); 36 int icalparameter_string_to_enum(const char* str); 37 38 typedef enum icalparameter_kind { 39 ICAL_ANY_PARAMETER = 0, 40 ICAL_ACTIONPARAM_PARAMETER, 41 ICAL_ALTREP_PARAMETER, 42 ICAL_CHARSET_PARAMETER, 43 ICAL_CN_PARAMETER, 44 ICAL_CUTYPE_PARAMETER, 45 ICAL_DELEGATEDFROM_PARAMETER, 46 ICAL_DELEGATEDTO_PARAMETER, 47 ICAL_DIR_PARAMETER, 48 ICAL_ENABLE_PARAMETER, 49 ICAL_ENCODING_PARAMETER, 50 ICAL_FBTYPE_PARAMETER, 51 ICAL_FMTTYPE_PARAMETER, 52 ICAL_ID_PARAMETER, 53 ICAL_LANGUAGE_PARAMETER, 54 ICAL_LATENCY_PARAMETER, 55 ICAL_LOCAL_PARAMETER, 56 ICAL_LOCALIZE_PARAMETER, 57 ICAL_MEMBER_PARAMETER, 58 ICAL_OPTIONS_PARAMETER, 59 ICAL_PARTSTAT_PARAMETER, 60 ICAL_RANGE_PARAMETER, 61 ICAL_RELATED_PARAMETER, 62 ICAL_RELTYPE_PARAMETER, 63 ICAL_ROLE_PARAMETER, 64 ICAL_RSVP_PARAMETER, 65 ICAL_SENTBY_PARAMETER, 66 ICAL_TZID_PARAMETER, 67 ICAL_VALUE_PARAMETER, 68 ICAL_X_PARAMETER, 69 ICAL_XLICCOMPARETYPE_PARAMETER, 70 ICAL_XLICERRORTYPE_PARAMETER, 71 ICAL_NO_PARAMETER 72 } icalparameter_kind; 73 74 #define ICALPARAMETER_FIRST_ENUM 20000 75 76 typedef enum icalparameter_action { 77 ICAL_ACTIONPARAM_X = 20000, 78 ICAL_ACTIONPARAM_ASK = 20001, 79 ICAL_ACTIONPARAM_ABORT = 20002, 80 ICAL_ACTIONPARAM_NONE = 20003 81 } icalparameter_action; 82 83 typedef enum icalparameter_cutype { 84 ICAL_CUTYPE_X = 20004, 85 ICAL_CUTYPE_INDIVIDUAL = 20005, 86 ICAL_CUTYPE_GROUP = 20006, 87 ICAL_CUTYPE_RESOURCE = 20007, 88 ICAL_CUTYPE_ROOM = 20008, 89 ICAL_CUTYPE_UNKNOWN = 20009, 90 ICAL_CUTYPE_NONE = 20010 91 } icalparameter_cutype; 92 93 typedef enum icalparameter_enable { 94 ICAL_ENABLE_X = 20011, 95 ICAL_ENABLE_TRUE = 20012, 96 ICAL_ENABLE_FALSE = 20013, 97 ICAL_ENABLE_NONE = 20014 98 } icalparameter_enable; 99 100 typedef enum icalparameter_encoding { 101 ICAL_ENCODING_X = 20015, 102 ICAL_ENCODING_8BIT = 20016, 103 ICAL_ENCODING_BASE64 = 20017, 104 ICAL_ENCODING_NONE = 20018 105 } icalparameter_encoding; 106 107 typedef enum icalparameter_fbtype { 108 ICAL_FBTYPE_X = 20019, 109 ICAL_FBTYPE_FREE = 20020, 110 ICAL_FBTYPE_BUSY = 20021, 111 ICAL_FBTYPE_BUSYUNAVAILABLE = 20022, 112 ICAL_FBTYPE_BUSYTENTATIVE = 20023, 113 ICAL_FBTYPE_NONE = 20024 114 } icalparameter_fbtype; 115 116 typedef enum icalparameter_local { 117 ICAL_LOCAL_X = 20025, 118 ICAL_LOCAL_TRUE = 20026, 119 ICAL_LOCAL_FALSE = 20027, 120 ICAL_LOCAL_NONE = 20028 121 } icalparameter_local; 122 123 typedef enum icalparameter_partstat { 124 ICAL_PARTSTAT_X = 20029, 125 ICAL_PARTSTAT_NEEDSACTION = 20030, 126 ICAL_PARTSTAT_ACCEPTED = 20031, 127 ICAL_PARTSTAT_DECLINED = 20032, 128 ICAL_PARTSTAT_TENTATIVE = 20033, 129 ICAL_PARTSTAT_DELEGATED = 20034, 130 ICAL_PARTSTAT_COMPLETED = 20035, 131 ICAL_PARTSTAT_INPROCESS = 20036, 132 ICAL_PARTSTAT_NONE = 20037 133 } icalparameter_partstat; 134 135 typedef enum icalparameter_range { 136 ICAL_RANGE_X = 20038, 137 ICAL_RANGE_THISANDPRIOR = 20039, 138 ICAL_RANGE_THISANDFUTURE = 20040, 139 ICAL_RANGE_NONE = 20041 140 } icalparameter_range; 141 142 typedef enum icalparameter_related { 143 ICAL_RELATED_X = 20042, 144 ICAL_RELATED_START = 20043, 145 ICAL_RELATED_END = 20044, 146 ICAL_RELATED_NONE = 20045 147 } icalparameter_related; 148 149 typedef enum icalparameter_reltype { 150 ICAL_RELTYPE_X = 20046, 151 ICAL_RELTYPE_PARENT = 20047, 152 ICAL_RELTYPE_CHILD = 20048, 153 ICAL_RELTYPE_SIBLING = 20049, 154 ICAL_RELTYPE_NONE = 20050 155 } icalparameter_reltype; 156 157 typedef enum icalparameter_role { 158 ICAL_ROLE_X = 20051, 159 ICAL_ROLE_CHAIR = 20052, 160 ICAL_ROLE_REQPARTICIPANT = 20053, 161 ICAL_ROLE_OPTPARTICIPANT = 20054, 162 ICAL_ROLE_NONPARTICIPANT = 20055, 163 ICAL_ROLE_NONE = 20056 164 } icalparameter_role; 165 166 typedef enum icalparameter_rsvp { 167 ICAL_RSVP_X = 20057, 168 ICAL_RSVP_TRUE = 20058, 169 ICAL_RSVP_FALSE = 20059, 170 ICAL_RSVP_NONE = 20060 171 } icalparameter_rsvp; 172 173 typedef enum icalparameter_value { 174 ICAL_VALUE_X = 20061, 175 ICAL_VALUE_BINARY = 20062, 176 ICAL_VALUE_BOOLEAN = 20063, 177 ICAL_VALUE_DATE = 20064, 178 ICAL_VALUE_DURATION = 20065, 179 ICAL_VALUE_FLOAT = 20066, 180 ICAL_VALUE_INTEGER = 20067, 181 ICAL_VALUE_PERIOD = 20068, 182 ICAL_VALUE_RECUR = 20069, 183 ICAL_VALUE_TEXT = 20070, 184 ICAL_VALUE_URI = 20071, 185 ICAL_VALUE_ERROR = 20072, 186 ICAL_VALUE_DATETIME = 20073, 187 ICAL_VALUE_UTCOFFSET = 20074, 188 ICAL_VALUE_CALADDRESS = 20075, 189 ICAL_VALUE_NONE = 20076 190 } icalparameter_value; 191 192 typedef enum icalparameter_xliccomparetype { 193 ICAL_XLICCOMPARETYPE_X = 20077, 194 ICAL_XLICCOMPARETYPE_EQUAL = 20078, 195 ICAL_XLICCOMPARETYPE_NOTEQUAL = 20079, 196 ICAL_XLICCOMPARETYPE_LESS = 20080, 197 ICAL_XLICCOMPARETYPE_GREATER = 20081, 198 ICAL_XLICCOMPARETYPE_LESSEQUAL = 20082, 199 ICAL_XLICCOMPARETYPE_GREATEREQUAL = 20083, 200 ICAL_XLICCOMPARETYPE_REGEX = 20084, 201 ICAL_XLICCOMPARETYPE_ISNULL = 20085, 202 ICAL_XLICCOMPARETYPE_ISNOTNULL = 20086, 203 ICAL_XLICCOMPARETYPE_NONE = 20087 204 } icalparameter_xliccomparetype; 205 206 typedef enum icalparameter_xlicerrortype { 207 ICAL_XLICERRORTYPE_X = 20088, 208 ICAL_XLICERRORTYPE_COMPONENTPARSEERROR = 20089, 209 ICAL_XLICERRORTYPE_PROPERTYPARSEERROR = 20090, 210 ICAL_XLICERRORTYPE_PARAMETERNAMEPARSEERROR = 20091, 211 ICAL_XLICERRORTYPE_PARAMETERVALUEPARSEERROR = 20092, 212 ICAL_XLICERRORTYPE_VALUEPARSEERROR = 20093, 213 ICAL_XLICERRORTYPE_INVALIDITIP = 20094, 214 ICAL_XLICERRORTYPE_UNKNOWNVCALPROPERROR = 20095, 215 ICAL_XLICERRORTYPE_MIMEPARSEERROR = 20096, 216 ICAL_XLICERRORTYPE_VCALPROPPARSEERROR = 20097, 217 ICAL_XLICERRORTYPE_NONE = 20098 218 } icalparameter_xlicerrortype; 219 220 #define ICALPARAMETER_LAST_ENUM 20099 221 222 /* ID */ 223 icalparameter* icalparameter_new_id(const char* v); 224 const char* icalparameter_get_id(const icalparameter* value); 225 void icalparameter_set_id(icalparameter* value, const char* v); 226 227 /* LOCALIZE */ 228 icalparameter* icalparameter_new_localize(const char* v); 229 const char* icalparameter_get_localize(const icalparameter* value); 230 void icalparameter_set_localize(icalparameter* value, const char* v); 231 232 /* LANGUAGE */ 233 icalparameter* icalparameter_new_language(const char* v); 234 const char* icalparameter_get_language(const icalparameter* value); 235 void icalparameter_set_language(icalparameter* value, const char* v); 236 237 /* DIR */ 238 icalparameter* icalparameter_new_dir(const char* v); 239 const char* icalparameter_get_dir(const icalparameter* value); 240 void icalparameter_set_dir(icalparameter* value, const char* v); 241 242 /* RELTYPE */ 243 icalparameter* icalparameter_new_reltype(icalparameter_reltype v); 244 icalparameter_reltype icalparameter_get_reltype(const icalparameter* value); 245 void icalparameter_set_reltype(icalparameter* value, icalparameter_reltype v); 246 247 /* FMTTYPE */ 248 icalparameter* icalparameter_new_fmttype(const char* v); 249 const char* icalparameter_get_fmttype(const icalparameter* value); 250 void icalparameter_set_fmttype(icalparameter* value, const char* v); 251 252 /* OPTIONS */ 253 icalparameter* icalparameter_new_options(const char* v); 254 const char* icalparameter_get_options(const icalparameter* value); 255 void icalparameter_set_options(icalparameter* value, const char* v); 256 257 /* TZID */ 258 icalparameter* icalparameter_new_tzid(const char* v); 259 const char* icalparameter_get_tzid(const icalparameter* value); 260 void icalparameter_set_tzid(icalparameter* value, const char* v); 261 262 /* ENABLE */ 263 icalparameter* icalparameter_new_enable(icalparameter_enable v); 264 icalparameter_enable icalparameter_get_enable(const icalparameter* value); 265 void icalparameter_set_enable(icalparameter* value, icalparameter_enable v); 266 267 /* RANGE */ 268 icalparameter* icalparameter_new_range(icalparameter_range v); 269 icalparameter_range icalparameter_get_range(const icalparameter* value); 270 void icalparameter_set_range(icalparameter* value, icalparameter_range v); 271 272 /* LATENCY */ 273 icalparameter* icalparameter_new_latency(const char* v); 274 const char* icalparameter_get_latency(const icalparameter* value); 275 void icalparameter_set_latency(icalparameter* value, const char* v); 276 277 /* DELEGATED-TO */ 278 icalparameter* icalparameter_new_delegatedto(const char* v); 279 const char* icalparameter_get_delegatedto(const icalparameter* value); 280 void icalparameter_set_delegatedto(icalparameter* value, const char* v); 281 282 /* LOCAL */ 283 icalparameter* icalparameter_new_local(icalparameter_local v); 284 icalparameter_local icalparameter_get_local(const icalparameter* value); 285 void icalparameter_set_local(icalparameter* value, icalparameter_local v); 286 287 /* CN */ 288 icalparameter* icalparameter_new_cn(const char* v); 289 const char* icalparameter_get_cn(const icalparameter* value); 290 void icalparameter_set_cn(icalparameter* value, const char* v); 291 292 /* CHARSET */ 293 icalparameter* icalparameter_new_charset(const char* v); 294 const char* icalparameter_get_charset(const icalparameter* value); 295 void icalparameter_set_charset(icalparameter* value, const char* v); 296 297 /* ACTIONPARAM */ 298 icalparameter* icalparameter_new_actionparam(icalparameter_action v); 299 icalparameter_action icalparameter_get_actionparam(const icalparameter* value); 300 void icalparameter_set_actionparam(icalparameter* value, icalparameter_action v); 301 302 /* VALUE */ 303 icalparameter* icalparameter_new_value(icalparameter_value v); 304 icalparameter_value icalparameter_get_value(const icalparameter* value); 305 void icalparameter_set_value(icalparameter* value, icalparameter_value v); 306 307 /* X-LIC-COMPARETYPE */ 308 icalparameter* icalparameter_new_xliccomparetype(icalparameter_xliccomparetype v); 309 icalparameter_xliccomparetype icalparameter_get_xliccomparetype(const icalparameter* value); 310 void icalparameter_set_xliccomparetype(icalparameter* value, icalparameter_xliccomparetype v); 311 312 /* X */ 313 icalparameter* icalparameter_new_x(const char* v); 314 const char* icalparameter_get_x(const icalparameter* value); 315 void icalparameter_set_x(icalparameter* value, const char* v); 316 317 /* MEMBER */ 318 icalparameter* icalparameter_new_member(const char* v); 319 const char* icalparameter_get_member(const icalparameter* value); 320 void icalparameter_set_member(icalparameter* value, const char* v); 321 322 /* SENT-BY */ 323 icalparameter* icalparameter_new_sentby(const char* v); 324 const char* icalparameter_get_sentby(const icalparameter* value); 325 void icalparameter_set_sentby(icalparameter* value, const char* v); 326 327 /* CUTYPE */ 328 icalparameter* icalparameter_new_cutype(icalparameter_cutype v); 329 icalparameter_cutype icalparameter_get_cutype(const icalparameter* value); 330 void icalparameter_set_cutype(icalparameter* value, icalparameter_cutype v); 331 332 /* RSVP */ 333 icalparameter* icalparameter_new_rsvp(icalparameter_rsvp v); 334 icalparameter_rsvp icalparameter_get_rsvp(const icalparameter* value); 335 void icalparameter_set_rsvp(icalparameter* value, icalparameter_rsvp v); 336 337 /* RELATED */ 338 icalparameter* icalparameter_new_related(icalparameter_related v); 339 icalparameter_related icalparameter_get_related(const icalparameter* value); 340 void icalparameter_set_related(icalparameter* value, icalparameter_related v); 341 342 /* X-LIC-ERRORTYPE */ 343 icalparameter* icalparameter_new_xlicerrortype(icalparameter_xlicerrortype v); 344 icalparameter_xlicerrortype icalparameter_get_xlicerrortype(const icalparameter* value); 345 void icalparameter_set_xlicerrortype(icalparameter* value, icalparameter_xlicerrortype v); 346 347 /* ENCODING */ 348 icalparameter* icalparameter_new_encoding(icalparameter_encoding v); 349 icalparameter_encoding icalparameter_get_encoding(const icalparameter* value); 350 void icalparameter_set_encoding(icalparameter* value, icalparameter_encoding v); 351 352 /* ALTREP */ 353 icalparameter* icalparameter_new_altrep(const char* v); 354 const char* icalparameter_get_altrep(const icalparameter* value); 355 void icalparameter_set_altrep(icalparameter* value, const char* v); 356 357 /* DELEGATED-FROM */ 358 icalparameter* icalparameter_new_delegatedfrom(const char* v); 359 const char* icalparameter_get_delegatedfrom(const icalparameter* value); 360 void icalparameter_set_delegatedfrom(icalparameter* value, const char* v); 361 362 /* FBTYPE */ 363 icalparameter* icalparameter_new_fbtype(icalparameter_fbtype v); 364 icalparameter_fbtype icalparameter_get_fbtype(const icalparameter* value); 365 void icalparameter_set_fbtype(icalparameter* value, icalparameter_fbtype v); 366 367 /* PARTSTAT */ 368 icalparameter* icalparameter_new_partstat(icalparameter_partstat v); 369 icalparameter_partstat icalparameter_get_partstat(const icalparameter* value); 370 void icalparameter_set_partstat(icalparameter* value, icalparameter_partstat v); 371 372 /* ROLE */ 373 icalparameter* icalparameter_new_role(icalparameter_role v); 374 icalparameter_role icalparameter_get_role(const icalparameter* value); 375 void icalparameter_set_role(icalparameter* value, icalparameter_role v); 376 377 #endif /*ICALPARAMETER_H*/ 378 379 /* Everything below this line is machine generated. Do not edit. */ -
src/libical/icalderivedproperty.c
diff -Nurb libical-0.42.orig/src/libical/icalderivedproperty.c libical-0.42/src/libical/icalderivedproperty.c
old new 1 /* -*- Mode: C -*- */ 2 3 /*====================================================================== 4 FILE: icalderivedproperty.c 5 CREATOR: eric 15 Feb 2001 6 7 $Id: icalderivedproperty.c.in,v 1.15 2008-01-28 22:34:37 artcancro Exp $ 8 9 10 (C) COPYRIGHT 2000, Eric Busboom, http://www.softwarestudio.org 11 12 This program is free software; you can redistribute it and/or modify 13 it under the terms of either: 14 15 The LGPL as published by the Free Software Foundation, version 16 2.1, available at: http://www.fsf.org/copyleft/lesser.html 17 18 Or: 19 20 The Mozilla Public License Version 1.0. You may obtain a copy of 21 the License at http://www.mozilla.org/MPL/ 22 23 The original code is icalproperty.c 24 25 ======================================================================*/ 26 27 #ifdef HAVE_CONFIG_H 28 #include <config.h> 29 #endif 30 31 #include "icalproperty.h" 32 #include "icalcomponent.h" 33 #include "pvl.h" 34 #include "icalenums.h" 35 #include "icalerror.h" 36 #include "icalmemory.h" 37 #include "icalparser.h" 38 #include "icaltimezone.h" 39 40 #include <string.h> /* For icalmemory_strdup, rindex */ 41 #include <assert.h> 42 #include <stdlib.h> 43 #include <errno.h> 44 #include <stdio.h> /* for printf */ 45 #include <stdarg.h> /* for va_list, va_start, etc. */ 46 47 #ifdef WIN32 48 #define strcasecmp stricmp 49 #endif 50 51 struct icalproperty_impl* 52 icalproperty_new_impl (icalproperty_kind kind); 53 void icalproperty_add_parameters(struct icalproperty_impl *prop,va_list args); 54 55 /* This map associates the property kinds with the string 56 representation of the property name and the kind of VALUE that the 57 property uses as a default */ 58 59 struct icalproperty_map { 60 icalproperty_kind kind; 61 const char *name; 62 icalvalue_kind value; 63 64 }; 65 66 /* This map associates the property enumerations with the king of 67 property that they are used in and the string representation of the 68 enumeration */ 69 70 struct icalproperty_enum_map { 71 icalproperty_kind prop; 72 int prop_enum; 73 const char* str; 74 }; 75 76 77 static const struct icalproperty_map property_map[101] = { 78 {ICAL_ACTION_PROPERTY,"ACTION",ICAL_ACTION_VALUE}, 79 {ICAL_ALLOWCONFLICT_PROPERTY,"ALLOW-CONFLICT",ICAL_TEXT_VALUE}, 80 {ICAL_ANY_PROPERTY,"ANY",ICAL_NO_VALUE}, 81 {ICAL_ATTACH_PROPERTY,"ATTACH",ICAL_ATTACH_VALUE}, 82 {ICAL_ATTENDEE_PROPERTY,"ATTENDEE",ICAL_CALADDRESS_VALUE}, 83 {ICAL_CALID_PROPERTY,"CALID",ICAL_TEXT_VALUE}, 84 {ICAL_CALMASTER_PROPERTY,"CALMASTER",ICAL_TEXT_VALUE}, 85 {ICAL_CALSCALE_PROPERTY,"CALSCALE",ICAL_TEXT_VALUE}, 86 {ICAL_CAPVERSION_PROPERTY,"CAP-VERSION",ICAL_TEXT_VALUE}, 87 {ICAL_CARLEVEL_PROPERTY,"CAR-LEVEL",ICAL_CARLEVEL_VALUE}, 88 {ICAL_CARID_PROPERTY,"CARID",ICAL_TEXT_VALUE}, 89 {ICAL_CATEGORIES_PROPERTY,"CATEGORIES",ICAL_TEXT_VALUE}, 90 {ICAL_CLASS_PROPERTY,"CLASS",ICAL_CLASS_VALUE}, 91 {ICAL_CMD_PROPERTY,"CMD",ICAL_CMD_VALUE}, 92 {ICAL_COMMENT_PROPERTY,"COMMENT",ICAL_TEXT_VALUE}, 93 {ICAL_COMPLETED_PROPERTY,"COMPLETED",ICAL_DATETIME_VALUE}, 94 {ICAL_COMPONENTS_PROPERTY,"COMPONENTS",ICAL_TEXT_VALUE}, 95 {ICAL_CONTACT_PROPERTY,"CONTACT",ICAL_TEXT_VALUE}, 96 {ICAL_CREATED_PROPERTY,"CREATED",ICAL_DATETIME_VALUE}, 97 {ICAL_CSID_PROPERTY,"CSID",ICAL_URI_VALUE}, 98 {ICAL_DATEMAX_PROPERTY,"DATE-MAX",ICAL_DATETIME_VALUE}, 99 {ICAL_DATEMIN_PROPERTY,"DATE-MIN",ICAL_DATETIME_VALUE}, 100 {ICAL_DECREED_PROPERTY,"DECREED",ICAL_TEXT_VALUE}, 101 {ICAL_DEFAULTCHARSET_PROPERTY,"DEFAULT-CHARSET",ICAL_TEXT_VALUE}, 102 {ICAL_DEFAULTLOCALE_PROPERTY,"DEFAULT-LOCALE",ICAL_TEXT_VALUE}, 103 {ICAL_DEFAULTTZID_PROPERTY,"DEFAULT-TZID",ICAL_TEXT_VALUE}, 104 {ICAL_DEFAULTVCARS_PROPERTY,"DEFAULT-VCARS",ICAL_TEXT_VALUE}, 105 {ICAL_DENY_PROPERTY,"DENY",ICAL_TEXT_VALUE}, 106 {ICAL_DESCRIPTION_PROPERTY,"DESCRIPTION",ICAL_TEXT_VALUE}, 107 {ICAL_DTEND_PROPERTY,"DTEND",ICAL_DATETIME_VALUE}, 108 {ICAL_DTSTAMP_PROPERTY,"DTSTAMP",ICAL_DATETIME_VALUE}, 109 {ICAL_DTSTART_PROPERTY,"DTSTART",ICAL_DATETIME_VALUE}, 110 {ICAL_DUE_PROPERTY,"DUE",ICAL_DATETIME_VALUE}, 111 {ICAL_DURATION_PROPERTY,"DURATION",ICAL_DURATION_VALUE}, 112 {ICAL_EXDATE_PROPERTY,"EXDATE",ICAL_DATETIME_VALUE}, 113 {ICAL_EXPAND_PROPERTY,"EXPAND",ICAL_INTEGER_VALUE}, 114 {ICAL_EXRULE_PROPERTY,"EXRULE",ICAL_RECUR_VALUE}, 115 {ICAL_FREEBUSY_PROPERTY,"FREEBUSY",ICAL_PERIOD_VALUE}, 116 {ICAL_GEO_PROPERTY,"GEO",ICAL_GEO_VALUE}, 117 {ICAL_GRANT_PROPERTY,"GRANT",ICAL_TEXT_VALUE}, 118 {ICAL_ITIPVERSION_PROPERTY,"ITIP-VERSION",ICAL_TEXT_VALUE}, 119 {ICAL_LASTMODIFIED_PROPERTY,"LAST-MODIFIED",ICAL_DATETIME_VALUE}, 120 {ICAL_LOCATION_PROPERTY,"LOCATION",ICAL_TEXT_VALUE}, 121 {ICAL_MAXCOMPONENTSIZE_PROPERTY,"MAX-COMPONENT-SIZE",ICAL_INTEGER_VALUE}, 122 {ICAL_MAXDATE_PROPERTY,"MAXDATE",ICAL_DATETIME_VALUE}, 123 {ICAL_MAXRESULTS_PROPERTY,"MAXRESULTS",ICAL_INTEGER_VALUE}, 124 {ICAL_MAXRESULTSSIZE_PROPERTY,"MAXRESULTSSIZE",ICAL_INTEGER_VALUE}, 125 {ICAL_METHOD_PROPERTY,"METHOD",ICAL_METHOD_VALUE}, 126 {ICAL_MINDATE_PROPERTY,"MINDATE",ICAL_DATETIME_VALUE}, 127 {ICAL_MULTIPART_PROPERTY,"MULTIPART",ICAL_TEXT_VALUE}, 128 {ICAL_NAME_PROPERTY,"NAME",ICAL_TEXT_VALUE}, 129 {ICAL_ORGANIZER_PROPERTY,"ORGANIZER",ICAL_CALADDRESS_VALUE}, 130 {ICAL_OWNER_PROPERTY,"OWNER",ICAL_TEXT_VALUE}, 131 {ICAL_PERCENTCOMPLETE_PROPERTY,"PERCENT-COMPLETE",ICAL_INTEGER_VALUE}, 132 {ICAL_PERMISSION_PROPERTY,"PERMISSION",ICAL_TEXT_VALUE}, 133 {ICAL_PRIORITY_PROPERTY,"PRIORITY",ICAL_INTEGER_VALUE}, 134 {ICAL_PRODID_PROPERTY,"PRODID",ICAL_TEXT_VALUE}, 135 {ICAL_QUERY_PROPERTY,"QUERY",ICAL_QUERY_VALUE}, 136 {ICAL_QUERYLEVEL_PROPERTY,"QUERY-LEVEL",ICAL_QUERYLEVEL_VALUE}, 137 {ICAL_QUERYID_PROPERTY,"QUERYID",ICAL_TEXT_VALUE}, 138 {ICAL_QUERYNAME_PROPERTY,"QUERYNAME",ICAL_TEXT_VALUE}, 139 {ICAL_RDATE_PROPERTY,"RDATE",ICAL_DATETIMEPERIOD_VALUE}, 140 {ICAL_RECURACCEPTED_PROPERTY,"RECUR-ACCEPTED",ICAL_TEXT_VALUE}, 141 {ICAL_RECUREXPAND_PROPERTY,"RECUR-EXPAND",ICAL_TEXT_VALUE}, 142 {ICAL_RECURLIMIT_PROPERTY,"RECUR-LIMIT",ICAL_TEXT_VALUE}, 143 {ICAL_RECURRENCEID_PROPERTY,"RECURRENCE-ID",ICAL_DATETIME_VALUE}, 144 {ICAL_RELATEDTO_PROPERTY,"RELATED-TO",ICAL_TEXT_VALUE}, 145 {ICAL_RELCALID_PROPERTY,"RELCALID",ICAL_TEXT_VALUE}, 146 {ICAL_REPEAT_PROPERTY,"REPEAT",ICAL_INTEGER_VALUE}, 147 {ICAL_REQUESTSTATUS_PROPERTY,"REQUEST-STATUS",ICAL_REQUESTSTATUS_VALUE}, 148 {ICAL_RESOURCES_PROPERTY,"RESOURCES",ICAL_TEXT_VALUE}, 149 {ICAL_RESTRICTION_PROPERTY,"RESTRICTION",ICAL_QUERY_VALUE}, 150 {ICAL_RRULE_PROPERTY,"RRULE",ICAL_RECUR_VALUE}, 151 {ICAL_SCOPE_PROPERTY,"SCOPE",ICAL_TEXT_VALUE}, 152 {ICAL_SEQUENCE_PROPERTY,"SEQUENCE",ICAL_INTEGER_VALUE}, 153 {ICAL_STATUS_PROPERTY,"STATUS",ICAL_STATUS_VALUE}, 154 {ICAL_STORESEXPANDED_PROPERTY,"STORES-EXPANDED",ICAL_TEXT_VALUE}, 155 {ICAL_SUMMARY_PROPERTY,"SUMMARY",ICAL_TEXT_VALUE}, 156 {ICAL_TARGET_PROPERTY,"TARGET",ICAL_CALADDRESS_VALUE}, 157 {ICAL_TRANSP_PROPERTY,"TRANSP",ICAL_TRANSP_VALUE}, 158 {ICAL_TRIGGER_PROPERTY,"TRIGGER",ICAL_TRIGGER_VALUE}, 159 {ICAL_TZID_PROPERTY,"TZID",ICAL_TEXT_VALUE}, 160 {ICAL_TZNAME_PROPERTY,"TZNAME",ICAL_TEXT_VALUE}, 161 {ICAL_TZOFFSETFROM_PROPERTY,"TZOFFSETFROM",ICAL_UTCOFFSET_VALUE}, 162 {ICAL_TZOFFSETTO_PROPERTY,"TZOFFSETTO",ICAL_UTCOFFSET_VALUE}, 163 {ICAL_TZURL_PROPERTY,"TZURL",ICAL_URI_VALUE}, 164 {ICAL_UID_PROPERTY,"UID",ICAL_TEXT_VALUE}, 165 {ICAL_URL_PROPERTY,"URL",ICAL_URI_VALUE}, 166 {ICAL_VERSION_PROPERTY,"VERSION",ICAL_TEXT_VALUE}, 167 {ICAL_X_PROPERTY,"X",ICAL_X_VALUE}, 168 {ICAL_XLICCLASS_PROPERTY,"X-LIC-CLASS",ICAL_XLICCLASS_VALUE}, 169 {ICAL_XLICCLUSTERCOUNT_PROPERTY,"X-LIC-CLUSTERCOUNT",ICAL_STRING_VALUE}, 170 {ICAL_XLICERROR_PROPERTY,"X-LIC-ERROR",ICAL_TEXT_VALUE}, 171 {ICAL_XLICMIMECHARSET_PROPERTY,"X-LIC-MIMECHARSET",ICAL_STRING_VALUE}, 172 {ICAL_XLICMIMECID_PROPERTY,"X-LIC-MIMECID",ICAL_STRING_VALUE}, 173 {ICAL_XLICMIMECONTENTTYPE_PROPERTY,"X-LIC-MIMECONTENTTYPE",ICAL_STRING_VALUE}, 174 {ICAL_XLICMIMEENCODING_PROPERTY,"X-LIC-MIMEENCODING",ICAL_STRING_VALUE}, 175 {ICAL_XLICMIMEFILENAME_PROPERTY,"X-LIC-MIMEFILENAME",ICAL_STRING_VALUE}, 176 {ICAL_XLICMIMEOPTINFO_PROPERTY,"X-LIC-MIMEOPTINFO",ICAL_STRING_VALUE}, 177 {ICAL_NO_PROPERTY,"",ICAL_NO_VALUE}}; 178 179 static const struct icalproperty_enum_map enum_map[98] = { 180 {ICAL_ACTION_PROPERTY,ICAL_ACTION_X,"" }, /*10000*/ 181 {ICAL_ACTION_PROPERTY,ICAL_ACTION_AUDIO,"AUDIO" }, /*10001*/ 182 {ICAL_ACTION_PROPERTY,ICAL_ACTION_DISPLAY,"DISPLAY" }, /*10002*/ 183 {ICAL_ACTION_PROPERTY,ICAL_ACTION_EMAIL,"EMAIL" }, /*10003*/ 184 {ICAL_ACTION_PROPERTY,ICAL_ACTION_PROCEDURE,"PROCEDURE" }, /*10004*/ 185 {ICAL_ACTION_PROPERTY,ICAL_ACTION_NONE,"" }, /*10005*/ 186 {ICAL_CARLEVEL_PROPERTY,ICAL_CARLEVEL_X,"" }, /*10006*/ 187 {ICAL_CARLEVEL_PROPERTY,ICAL_CARLEVEL_CARNONE,"CAR-NONE" }, /*10007*/ 188 {ICAL_CARLEVEL_PROPERTY,ICAL_CARLEVEL_CARMIN,"CAR-MIN" }, /*10008*/ 189 {ICAL_CARLEVEL_PROPERTY,ICAL_CARLEVEL_CARFULL1,"CAR-FULL-1" }, /*10009*/ 190 {ICAL_CARLEVEL_PROPERTY,ICAL_CARLEVEL_NONE,"" }, /*10010*/ 191 {ICAL_CLASS_PROPERTY,ICAL_CLASS_X,"" }, /*10011*/ 192 {ICAL_CLASS_PROPERTY,ICAL_CLASS_PUBLIC,"PUBLIC" }, /*10012*/ 193 {ICAL_CLASS_PROPERTY,ICAL_CLASS_PRIVATE,"PRIVATE" }, /*10013*/ 194 {ICAL_CLASS_PROPERTY,ICAL_CLASS_CONFIDENTIAL,"CONFIDENTIAL" }, /*10014*/ 195 {ICAL_CLASS_PROPERTY,ICAL_CLASS_NONE,"" }, /*10015*/ 196 {ICAL_CMD_PROPERTY,ICAL_CMD_X,"" }, /*10016*/ 197 {ICAL_CMD_PROPERTY,ICAL_CMD_ABORT,"ABORT" }, /*10017*/ 198 {ICAL_CMD_PROPERTY,ICAL_CMD_CONTINUE,"CONTINUE" }, /*10018*/ 199 {ICAL_CMD_PROPERTY,ICAL_CMD_CREATE,"CREATE" }, /*10019*/ 200 {ICAL_CMD_PROPERTY,ICAL_CMD_DELETE,"DELETE" }, /*10020*/ 201 {ICAL_CMD_PROPERTY,ICAL_CMD_GENERATEUID,"GENERATE-UID" }, /*10021*/ 202 {ICAL_CMD_PROPERTY,ICAL_CMD_GETCAPABILITY,"GET-CAPABILITY" }, /*10022*/ 203 {ICAL_CMD_PROPERTY,ICAL_CMD_IDENTIFY,"IDENTIFY" }, /*10023*/ 204 {ICAL_CMD_PROPERTY,ICAL_CMD_MODIFY,"MODIFY" }, /*10024*/ 205 {ICAL_CMD_PROPERTY,ICAL_CMD_MOVE,"MOVE" }, /*10025*/ 206 {ICAL_CMD_PROPERTY,ICAL_CMD_REPLY,"REPLY" }, /*10026*/ 207 {ICAL_CMD_PROPERTY,ICAL_CMD_SEARCH,"SEARCH" }, /*10027*/ 208 {ICAL_CMD_PROPERTY,ICAL_CMD_SETLOCALE,"SET-LOCALE" }, /*10028*/ 209 {ICAL_CMD_PROPERTY,ICAL_CMD_NONE,"" }, /*10029*/ 210 {ICAL_METHOD_PROPERTY,ICAL_METHOD_X,"" }, /*10030*/ 211 {ICAL_METHOD_PROPERTY,ICAL_METHOD_PUBLISH,"PUBLISH" }, /*10031*/ 212 {ICAL_METHOD_PROPERTY,ICAL_METHOD_REQUEST,"REQUEST" }, /*10032*/ 213 {ICAL_METHOD_PROPERTY,ICAL_METHOD_REPLY,"REPLY" }, /*10033*/ 214 {ICAL_METHOD_PROPERTY,ICAL_METHOD_ADD,"ADD" }, /*10034*/ 215 {ICAL_METHOD_PROPERTY,ICAL_METHOD_CANCEL,"CANCEL" }, /*10035*/ 216 {ICAL_METHOD_PROPERTY,ICAL_METHOD_REFRESH,"REFRESH" }, /*10036*/ 217 {ICAL_METHOD_PROPERTY,ICAL_METHOD_COUNTER,"COUNTER" }, /*10037*/ 218 {ICAL_METHOD_PROPERTY,ICAL_METHOD_DECLINECOUNTER,"DECLINECOUNTER" }, /*10038*/ 219 {ICAL_METHOD_PROPERTY,ICAL_METHOD_CREATE,"CREATE" }, /*10039*/ 220 {ICAL_METHOD_PROPERTY,ICAL_METHOD_READ,"READ" }, /*10040*/ 221 {ICAL_METHOD_PROPERTY,ICAL_METHOD_RESPONSE,"RESPONSE" }, /*10041*/ 222 {ICAL_METHOD_PROPERTY,ICAL_METHOD_MOVE,"MOVE" }, /*10042*/ 223 {ICAL_METHOD_PROPERTY,ICAL_METHOD_MODIFY,"MODIFY" }, /*10043*/ 224 {ICAL_METHOD_PROPERTY,ICAL_METHOD_GENERATEUID,"GENERATEUID" }, /*10044*/ 225 {ICAL_METHOD_PROPERTY,ICAL_METHOD_DELETE,"DELETE" }, /*10045*/ 226 {ICAL_METHOD_PROPERTY,ICAL_METHOD_NONE,"" }, /*10046*/ 227 {ICAL_QUERYLEVEL_PROPERTY,ICAL_QUERYLEVEL_X,"" }, /*10047*/ 228 {ICAL_QUERYLEVEL_PROPERTY,ICAL_QUERYLEVEL_CALQL1,"CAL-QL-1" }, /*10048*/ 229 {ICAL_QUERYLEVEL_PROPERTY,ICAL_QUERYLEVEL_CALQLNONE,"CAL-QL-NONE" }, /*10049*/ 230 {ICAL_QUERYLEVEL_PROPERTY,ICAL_QUERYLEVEL_NONE,"" }, /*10050*/ 231 {ICAL_STATUS_PROPERTY,ICAL_STATUS_X,"" }, /*10051*/ 232 {ICAL_STATUS_PROPERTY,ICAL_STATUS_TENTATIVE,"TENTATIVE" }, /*10052*/ 233 {ICAL_STATUS_PROPERTY,ICAL_STATUS_CONFIRMED,"CONFIRMED" }, /*10053*/ 234 {ICAL_STATUS_PROPERTY,ICAL_STATUS_COMPLETED,"COMPLETED" }, /*10054*/ 235 {ICAL_STATUS_PROPERTY,ICAL_STATUS_NEEDSACTION,"NEEDS-ACTION" }, /*10055*/ 236 {ICAL_STATUS_PROPERTY,ICAL_STATUS_CANCELLED,"CANCELLED" }, /*10056*/ 237 {ICAL_STATUS_PROPERTY,ICAL_STATUS_INPROCESS,"IN-PROCESS" }, /*10057*/ 238 {ICAL_STATUS_PROPERTY,ICAL_STATUS_DRAFT,"DRAFT" }, /*10058*/ 239 {ICAL_STATUS_PROPERTY,ICAL_STATUS_FINAL,"FINAL" }, /*10059*/ 240 {ICAL_STATUS_PROPERTY,ICAL_STATUS_NONE,"" }, /*10060*/ 241 {ICAL_TRANSP_PROPERTY,ICAL_TRANSP_X,"" }, /*10061*/ 242 {ICAL_TRANSP_PROPERTY,ICAL_TRANSP_OPAQUE,"OPAQUE" }, /*10062*/ 243 {ICAL_TRANSP_PROPERTY,ICAL_TRANSP_OPAQUENOCONFLICT,"OPAQUE-NOCONFLICT" }, /*10063*/ 244 {ICAL_TRANSP_PROPERTY,ICAL_TRANSP_TRANSPARENT,"TRANSPARENT" }, /*10064*/ 245 {ICAL_TRANSP_PROPERTY,ICAL_TRANSP_TRANSPARENTNOCONFLICT,"TRANSPARENT-NOCONFLICT" }, /*10065*/ 246 {ICAL_TRANSP_PROPERTY,ICAL_TRANSP_NONE,"" }, /*10066*/ 247 {ICAL_XLICCLASS_PROPERTY,ICAL_XLICCLASS_X,"" }, /*10067*/ 248 {ICAL_XLICCLASS_PROPERTY,ICAL_XLICCLASS_PUBLISHNEW,"PUBLISH-NEW" }, /*10068*/ 249 {ICAL_XLICCLASS_PROPERTY,ICAL_XLICCLASS_PUBLISHUPDATE,"PUBLISH-UPDATE" }, /*10069*/ 250 {ICAL_XLICCLASS_PROPERTY,ICAL_XLICCLASS_PUBLISHFREEBUSY,"PUBLISH-FREEBUSY" }, /*10070*/ 251 {ICAL_XLICCLASS_PROPERTY,ICAL_XLICCLASS_REQUESTNEW,"REQUEST-NEW" }, /*10071*/ 252 {ICAL_XLICCLASS_PROPERTY,ICAL_XLICCLASS_REQUESTUPDATE,"REQUEST-UPDATE" }, /*10072*/ 253 {ICAL_XLICCLASS_PROPERTY,ICAL_XLICCLASS_REQUESTRESCHEDULE,"REQUEST-RESCHEDULE" }, /*10073*/ 254 {ICAL_XLICCLASS_PROPERTY,ICAL_XLICCLASS_REQUESTDELEGATE,"REQUEST-DELEGATE" }, /*10074*/ 255 {ICAL_XLICCLASS_PROPERTY,ICAL_XLICCLASS_REQUESTNEWORGANIZER,"REQUEST-NEW-ORGANIZER" }, /*10075*/ 256 {ICAL_XLICCLASS_PROPERTY,ICAL_XLICCLASS_REQUESTFORWARD,"REQUEST-FORWARD" }, /*10076*/ 257 {ICAL_XLICCLASS_PROPERTY,ICAL_XLICCLASS_REQUESTSTATUS,"REQUEST-STATUS" }, /*10077*/ 258 {ICAL_XLICCLASS_PROPERTY,ICAL_XLICCLASS_REQUESTFREEBUSY,"REQUEST-FREEBUSY" }, /*10078*/ 259 {ICAL_XLICCLASS_PROPERTY,ICAL_XLICCLASS_REPLYACCEPT,"REPLY-ACCEPT" }, /*10079*/ 260 {ICAL_XLICCLASS_PROPERTY,ICAL_XLICCLASS_REPLYDECLINE,"REPLY-DECLINE" }, /*10080*/ 261 {ICAL_XLICCLASS_PROPERTY,ICAL_XLICCLASS_REPLYDELEGATE,"REPLY-DELEGATE" }, /*10081*/ 262 {ICAL_XLICCLASS_PROPERTY,ICAL_XLICCLASS_REPLYCRASHERACCEPT,"REPLY-CRASHER-ACCEPT" }, /*10082*/ 263 {ICAL_XLICCLASS_PROPERTY,ICAL_XLICCLASS_REPLYCRASHERDECLINE,"REPLY-CRASHER-DECLINE" }, /*10083*/ 264 {ICAL_XLICCLASS_PROPERTY,ICAL_XLICCLASS_ADDINSTANCE,"ADD-INSTANCE" }, /*10084*/ 265 {ICAL_XLICCLASS_PROPERTY,ICAL_XLICCLASS_CANCELEVENT,"CANCEL-EVENT" }, /*10085*/ 266 {ICAL_XLICCLASS_PROPERTY,ICAL_XLICCLASS_CANCELINSTANCE,"CANCEL-INSTANCE" }, /*10086*/ 267 {ICAL_XLICCLASS_PROPERTY,ICAL_XLICCLASS_CANCELALL,"CANCEL-ALL" }, /*10087*/ 268 {ICAL_XLICCLASS_PROPERTY,ICAL_XLICCLASS_REFRESH,"REFRESH" }, /*10088*/ 269 {ICAL_XLICCLASS_PROPERTY,ICAL_XLICCLASS_COUNTER,"COUNTER" }, /*10089*/ 270 {ICAL_XLICCLASS_PROPERTY,ICAL_XLICCLASS_DECLINECOUNTER,"DECLINECOUNTER" }, /*10090*/ 271 {ICAL_XLICCLASS_PROPERTY,ICAL_XLICCLASS_MALFORMED,"MALFORMED" }, /*10091*/ 272 {ICAL_XLICCLASS_PROPERTY,ICAL_XLICCLASS_OBSOLETE,"OBSOLETE" }, /*10092*/ 273 {ICAL_XLICCLASS_PROPERTY,ICAL_XLICCLASS_MISSEQUENCED,"MISSEQUENCED" }, /*10093*/ 274 {ICAL_XLICCLASS_PROPERTY,ICAL_XLICCLASS_UNKNOWN,"UNKNOWN" }, /*10094*/ 275 {ICAL_XLICCLASS_PROPERTY,ICAL_XLICCLASS_NONE,"" }, /*10095*/ 276 {ICAL_NO_PROPERTY,0,""} 277 }; 278 279 icalproperty* icalproperty_vanew_action(enum icalproperty_action v, ...){ 280 va_list args; 281 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_ACTION_PROPERTY); 282 icalproperty_set_action((icalproperty*)impl,v); 283 va_start(args,v); 284 icalproperty_add_parameters(impl, args); 285 va_end(args); 286 return (icalproperty*)impl; 287 } 288 289 /* ACTION */ 290 icalproperty* icalproperty_new_action(enum icalproperty_action v) { 291 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_ACTION_PROPERTY); 292 icalproperty_set_action((icalproperty*)impl,v); 293 return (icalproperty*)impl; 294 } 295 296 void icalproperty_set_action(icalproperty* prop, enum icalproperty_action v){ 297 298 icalerror_check_arg_rv( (prop!=0),"prop"); 299 icalproperty_set_value(prop,icalvalue_new_action(v)); 300 } 301 enum icalproperty_action icalproperty_get_action(const icalproperty* prop){ 302 icalerror_check_arg( (prop!=0),"prop"); 303 return icalvalue_get_action(icalproperty_get_value(prop)); 304 } 305 icalproperty* icalproperty_vanew_allowconflict(const char* v, ...){ 306 va_list args; 307 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_ALLOWCONFLICT_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 308 309 icalproperty_set_allowconflict((icalproperty*)impl,v); 310 va_start(args,v); 311 icalproperty_add_parameters(impl, args); 312 va_end(args); 313 return (icalproperty*)impl; 314 } 315 316 /* ALLOW-CONFLICT */ 317 icalproperty* icalproperty_new_allowconflict(const char* v) { 318 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_ALLOWCONFLICT_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 319 320 icalproperty_set_allowconflict((icalproperty*)impl,v); 321 return (icalproperty*)impl; 322 } 323 324 void icalproperty_set_allowconflict(icalproperty* prop, const char* v){ 325 icalerror_check_arg_rv( (v!=0),"v"); 326 327 icalerror_check_arg_rv( (prop!=0),"prop"); 328 icalproperty_set_value(prop,icalvalue_new_text(v)); 329 } 330 const char* icalproperty_get_allowconflict(const icalproperty* prop){ 331 icalerror_check_arg( (prop!=0),"prop"); 332 return icalvalue_get_text(icalproperty_get_value(prop)); 333 } 334 icalproperty* icalproperty_vanew_attach(icalattach * v, ...){ 335 va_list args; 336 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_ATTACH_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 337 338 icalproperty_set_attach((icalproperty*)impl,v); 339 va_start(args,v); 340 icalproperty_add_parameters(impl, args); 341 va_end(args); 342 return (icalproperty*)impl; 343 } 344 345 /* ATTACH */ 346 icalproperty* icalproperty_new_attach(icalattach * v) { 347 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_ATTACH_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 348 349 icalproperty_set_attach((icalproperty*)impl,v); 350 return (icalproperty*)impl; 351 } 352 353 void icalproperty_set_attach(icalproperty* prop, icalattach * v){ 354 icalerror_check_arg_rv( (v!=0),"v"); 355 356 icalerror_check_arg_rv( (prop!=0),"prop"); 357 icalproperty_set_value(prop,icalvalue_new_attach(v)); 358 } 359 icalattach * icalproperty_get_attach(const icalproperty* prop){ 360 icalerror_check_arg( (prop!=0),"prop"); 361 return icalvalue_get_attach(icalproperty_get_value(prop)); 362 } 363 icalproperty* icalproperty_vanew_attendee(const char* v, ...){ 364 va_list args; 365 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_ATTENDEE_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 366 367 icalproperty_set_attendee((icalproperty*)impl,v); 368 va_start(args,v); 369 icalproperty_add_parameters(impl, args); 370 va_end(args); 371 return (icalproperty*)impl; 372 } 373 374 /* ATTENDEE */ 375 icalproperty* icalproperty_new_attendee(const char* v) { 376 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_ATTENDEE_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 377 378 icalproperty_set_attendee((icalproperty*)impl,v); 379 return (icalproperty*)impl; 380 } 381 382 void icalproperty_set_attendee(icalproperty* prop, const char* v){ 383 icalerror_check_arg_rv( (v!=0),"v"); 384 385 icalerror_check_arg_rv( (prop!=0),"prop"); 386 icalproperty_set_value(prop,icalvalue_new_caladdress(v)); 387 } 388 const char* icalproperty_get_attendee(const icalproperty* prop){ 389 icalerror_check_arg( (prop!=0),"prop"); 390 return icalvalue_get_caladdress(icalproperty_get_value(prop)); 391 } 392 icalproperty* icalproperty_vanew_calid(const char* v, ...){ 393 va_list args; 394 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_CALID_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 395 396 icalproperty_set_calid((icalproperty*)impl,v); 397 va_start(args,v); 398 icalproperty_add_parameters(impl, args); 399 va_end(args); 400 return (icalproperty*)impl; 401 } 402 403 /* CALID */ 404 icalproperty* icalproperty_new_calid(const char* v) { 405 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_CALID_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 406 407 icalproperty_set_calid((icalproperty*)impl,v); 408 return (icalproperty*)impl; 409 } 410 411 void icalproperty_set_calid(icalproperty* prop, const char* v){ 412 icalerror_check_arg_rv( (v!=0),"v"); 413 414 icalerror_check_arg_rv( (prop!=0),"prop"); 415 icalproperty_set_value(prop,icalvalue_new_text(v)); 416 } 417 const char* icalproperty_get_calid(const icalproperty* prop){ 418 icalerror_check_arg( (prop!=0),"prop"); 419 return icalvalue_get_text(icalproperty_get_value(prop)); 420 } 421 icalproperty* icalproperty_vanew_calmaster(const char* v, ...){ 422 va_list args; 423 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_CALMASTER_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 424 425 icalproperty_set_calmaster((icalproperty*)impl,v); 426 va_start(args,v); 427 icalproperty_add_parameters(impl, args); 428 va_end(args); 429 return (icalproperty*)impl; 430 } 431 432 /* CALMASTER */ 433 icalproperty* icalproperty_new_calmaster(const char* v) { 434 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_CALMASTER_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 435 436 icalproperty_set_calmaster((icalproperty*)impl,v); 437 return (icalproperty*)impl; 438 } 439 440 void icalproperty_set_calmaster(icalproperty* prop, const char* v){ 441 icalerror_check_arg_rv( (v!=0),"v"); 442 443 icalerror_check_arg_rv( (prop!=0),"prop"); 444 icalproperty_set_value(prop,icalvalue_new_text(v)); 445 } 446 const char* icalproperty_get_calmaster(const icalproperty* prop){ 447 icalerror_check_arg( (prop!=0),"prop"); 448 return icalvalue_get_text(icalproperty_get_value(prop)); 449 } 450 icalproperty* icalproperty_vanew_calscale(const char* v, ...){ 451 va_list args; 452 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_CALSCALE_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 453 454 icalproperty_set_calscale((icalproperty*)impl,v); 455 va_start(args,v); 456 icalproperty_add_parameters(impl, args); 457 va_end(args); 458 return (icalproperty*)impl; 459 } 460 461 /* CALSCALE */ 462 icalproperty* icalproperty_new_calscale(const char* v) { 463 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_CALSCALE_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 464 465 icalproperty_set_calscale((icalproperty*)impl,v); 466 return (icalproperty*)impl; 467 } 468 469 void icalproperty_set_calscale(icalproperty* prop, const char* v){ 470 icalerror_check_arg_rv( (v!=0),"v"); 471 472 icalerror_check_arg_rv( (prop!=0),"prop"); 473 icalproperty_set_value(prop,icalvalue_new_text(v)); 474 } 475 const char* icalproperty_get_calscale(const icalproperty* prop){ 476 icalerror_check_arg( (prop!=0),"prop"); 477 return icalvalue_get_text(icalproperty_get_value(prop)); 478 } 479 icalproperty* icalproperty_vanew_capversion(const char* v, ...){ 480 va_list args; 481 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_CAPVERSION_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 482 483 icalproperty_set_capversion((icalproperty*)impl,v); 484 va_start(args,v); 485 icalproperty_add_parameters(impl, args); 486 va_end(args); 487 return (icalproperty*)impl; 488 } 489 490 /* CAP-VERSION */ 491 icalproperty* icalproperty_new_capversion(const char* v) { 492 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_CAPVERSION_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 493 494 icalproperty_set_capversion((icalproperty*)impl,v); 495 return (icalproperty*)impl; 496 } 497 498 void icalproperty_set_capversion(icalproperty* prop, const char* v){ 499 icalerror_check_arg_rv( (v!=0),"v"); 500 501 icalerror_check_arg_rv( (prop!=0),"prop"); 502 icalproperty_set_value(prop,icalvalue_new_text(v)); 503 } 504 const char* icalproperty_get_capversion(const icalproperty* prop){ 505 icalerror_check_arg( (prop!=0),"prop"); 506 return icalvalue_get_text(icalproperty_get_value(prop)); 507 } 508 icalproperty* icalproperty_vanew_carlevel(enum icalproperty_carlevel v, ...){ 509 va_list args; 510 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_CARLEVEL_PROPERTY); 511 icalproperty_set_carlevel((icalproperty*)impl,v); 512 va_start(args,v); 513 icalproperty_add_parameters(impl, args); 514 va_end(args); 515 return (icalproperty*)impl; 516 } 517 518 /* CAR-LEVEL */ 519 icalproperty* icalproperty_new_carlevel(enum icalproperty_carlevel v) { 520 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_CARLEVEL_PROPERTY); 521 icalproperty_set_carlevel((icalproperty*)impl,v); 522 return (icalproperty*)impl; 523 } 524 525 void icalproperty_set_carlevel(icalproperty* prop, enum icalproperty_carlevel v){ 526 527 icalerror_check_arg_rv( (prop!=0),"prop"); 528 icalproperty_set_value(prop,icalvalue_new_carlevel(v)); 529 } 530 enum icalproperty_carlevel icalproperty_get_carlevel(const icalproperty* prop){ 531 icalerror_check_arg( (prop!=0),"prop"); 532 return icalvalue_get_carlevel(icalproperty_get_value(prop)); 533 } 534 icalproperty* icalproperty_vanew_carid(const char* v, ...){ 535 va_list args; 536 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_CARID_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 537 538 icalproperty_set_carid((icalproperty*)impl,v); 539 va_start(args,v); 540 icalproperty_add_parameters(impl, args); 541 va_end(args); 542 return (icalproperty*)impl; 543 } 544 545 /* CARID */ 546 icalproperty* icalproperty_new_carid(const char* v) { 547 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_CARID_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 548 549 icalproperty_set_carid((icalproperty*)impl,v); 550 return (icalproperty*)impl; 551 } 552 553 void icalproperty_set_carid(icalproperty* prop, const char* v){ 554 icalerror_check_arg_rv( (v!=0),"v"); 555 556 icalerror_check_arg_rv( (prop!=0),"prop"); 557 icalproperty_set_value(prop,icalvalue_new_text(v)); 558 } 559 const char* icalproperty_get_carid(const icalproperty* prop){ 560 icalerror_check_arg( (prop!=0),"prop"); 561 return icalvalue_get_text(icalproperty_get_value(prop)); 562 } 563 icalproperty* icalproperty_vanew_categories(const char* v, ...){ 564 va_list args; 565 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_CATEGORIES_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 566 567 icalproperty_set_categories((icalproperty*)impl,v); 568 va_start(args,v); 569 icalproperty_add_parameters(impl, args); 570 va_end(args); 571 return (icalproperty*)impl; 572 } 573 574 /* CATEGORIES */ 575 icalproperty* icalproperty_new_categories(const char* v) { 576 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_CATEGORIES_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 577 578 icalproperty_set_categories((icalproperty*)impl,v); 579 return (icalproperty*)impl; 580 } 581 582 void icalproperty_set_categories(icalproperty* prop, const char* v){ 583 icalerror_check_arg_rv( (v!=0),"v"); 584 585 icalerror_check_arg_rv( (prop!=0),"prop"); 586 icalproperty_set_value(prop,icalvalue_new_text(v)); 587 } 588 const char* icalproperty_get_categories(const icalproperty* prop){ 589 icalerror_check_arg( (prop!=0),"prop"); 590 return icalvalue_get_text(icalproperty_get_value(prop)); 591 } 592 icalproperty* icalproperty_vanew_class(enum icalproperty_class v, ...){ 593 va_list args; 594 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_CLASS_PROPERTY); 595 icalproperty_set_class((icalproperty*)impl,v); 596 va_start(args,v); 597 icalproperty_add_parameters(impl, args); 598 va_end(args); 599 return (icalproperty*)impl; 600 } 601 602 /* CLASS */ 603 icalproperty* icalproperty_new_class(enum icalproperty_class v) { 604 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_CLASS_PROPERTY); 605 icalproperty_set_class((icalproperty*)impl,v); 606 return (icalproperty*)impl; 607 } 608 609 void icalproperty_set_class(icalproperty* prop, enum icalproperty_class v){ 610 611 icalerror_check_arg_rv( (prop!=0),"prop"); 612 icalproperty_set_value(prop,icalvalue_new_class(v)); 613 } 614 enum icalproperty_class icalproperty_get_class(const icalproperty* prop){ 615 icalerror_check_arg( (prop!=0),"prop"); 616 return icalvalue_get_class(icalproperty_get_value(prop)); 617 } 618 icalproperty* icalproperty_vanew_cmd(enum icalproperty_cmd v, ...){ 619 va_list args; 620 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_CMD_PROPERTY); 621 icalproperty_set_cmd((icalproperty*)impl,v); 622 va_start(args,v); 623 icalproperty_add_parameters(impl, args); 624 va_end(args); 625 return (icalproperty*)impl; 626 } 627 628 /* CMD */ 629 icalproperty* icalproperty_new_cmd(enum icalproperty_cmd v) { 630 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_CMD_PROPERTY); 631 icalproperty_set_cmd((icalproperty*)impl,v); 632 return (icalproperty*)impl; 633 } 634 635 void icalproperty_set_cmd(icalproperty* prop, enum icalproperty_cmd v){ 636 637 icalerror_check_arg_rv( (prop!=0),"prop"); 638 icalproperty_set_value(prop,icalvalue_new_cmd(v)); 639 } 640 enum icalproperty_cmd icalproperty_get_cmd(const icalproperty* prop){ 641 icalerror_check_arg( (prop!=0),"prop"); 642 return icalvalue_get_cmd(icalproperty_get_value(prop)); 643 } 644 icalproperty* icalproperty_vanew_comment(const char* v, ...){ 645 va_list args; 646 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_COMMENT_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 647 648 icalproperty_set_comment((icalproperty*)impl,v); 649 va_start(args,v); 650 icalproperty_add_parameters(impl, args); 651 va_end(args); 652 return (icalproperty*)impl; 653 } 654 655 /* COMMENT */ 656 icalproperty* icalproperty_new_comment(const char* v) { 657 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_COMMENT_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 658 659 icalproperty_set_comment((icalproperty*)impl,v); 660 return (icalproperty*)impl; 661 } 662 663 void icalproperty_set_comment(icalproperty* prop, const char* v){ 664 icalerror_check_arg_rv( (v!=0),"v"); 665 666 icalerror_check_arg_rv( (prop!=0),"prop"); 667 icalproperty_set_value(prop,icalvalue_new_text(v)); 668 } 669 const char* icalproperty_get_comment(const icalproperty* prop){ 670 icalerror_check_arg( (prop!=0),"prop"); 671 return icalvalue_get_text(icalproperty_get_value(prop)); 672 } 673 icalproperty* icalproperty_vanew_completed(struct icaltimetype v, ...){ 674 va_list args; 675 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_COMPLETED_PROPERTY); 676 icalproperty_set_completed((icalproperty*)impl,v); 677 va_start(args,v); 678 icalproperty_add_parameters(impl, args); 679 va_end(args); 680 return (icalproperty*)impl; 681 } 682 683 /* COMPLETED */ 684 icalproperty* icalproperty_new_completed(struct icaltimetype v) { 685 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_COMPLETED_PROPERTY); 686 icalproperty_set_completed((icalproperty*)impl,v); 687 return (icalproperty*)impl; 688 } 689 690 void icalproperty_set_completed(icalproperty* prop, struct icaltimetype v){ 691 692 icalerror_check_arg_rv( (prop!=0),"prop"); 693 icalproperty_set_value(prop,icalvalue_new_datetime(v)); 694 } 695 struct icaltimetype icalproperty_get_completed(const icalproperty* prop){ 696 icalerror_check_arg( (prop!=0),"prop"); 697 return icalvalue_get_datetime(icalproperty_get_value(prop)); 698 } 699 icalproperty* icalproperty_vanew_components(const char* v, ...){ 700 va_list args; 701 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_COMPONENTS_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 702 703 icalproperty_set_components((icalproperty*)impl,v); 704 va_start(args,v); 705 icalproperty_add_parameters(impl, args); 706 va_end(args); 707 return (icalproperty*)impl; 708 } 709 710 /* COMPONENTS */ 711 icalproperty* icalproperty_new_components(const char* v) { 712 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_COMPONENTS_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 713 714 icalproperty_set_components((icalproperty*)impl,v); 715 return (icalproperty*)impl; 716 } 717 718 void icalproperty_set_components(icalproperty* prop, const char* v){ 719 icalerror_check_arg_rv( (v!=0),"v"); 720 721 icalerror_check_arg_rv( (prop!=0),"prop"); 722 icalproperty_set_value(prop,icalvalue_new_text(v)); 723 } 724 const char* icalproperty_get_components(const icalproperty* prop){ 725 icalerror_check_arg( (prop!=0),"prop"); 726 return icalvalue_get_text(icalproperty_get_value(prop)); 727 } 728 icalproperty* icalproperty_vanew_contact(const char* v, ...){ 729 va_list args; 730 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_CONTACT_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 731 732 icalproperty_set_contact((icalproperty*)impl,v); 733 va_start(args,v); 734 icalproperty_add_parameters(impl, args); 735 va_end(args); 736 return (icalproperty*)impl; 737 } 738 739 /* CONTACT */ 740 icalproperty* icalproperty_new_contact(const char* v) { 741 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_CONTACT_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 742 743 icalproperty_set_contact((icalproperty*)impl,v); 744 return (icalproperty*)impl; 745 } 746 747 void icalproperty_set_contact(icalproperty* prop, const char* v){ 748 icalerror_check_arg_rv( (v!=0),"v"); 749 750 icalerror_check_arg_rv( (prop!=0),"prop"); 751 icalproperty_set_value(prop,icalvalue_new_text(v)); 752 } 753 const char* icalproperty_get_contact(const icalproperty* prop){ 754 icalerror_check_arg( (prop!=0),"prop"); 755 return icalvalue_get_text(icalproperty_get_value(prop)); 756 } 757 icalproperty* icalproperty_vanew_created(struct icaltimetype v, ...){ 758 va_list args; 759 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_CREATED_PROPERTY); 760 icalproperty_set_created((icalproperty*)impl,v); 761 va_start(args,v); 762 icalproperty_add_parameters(impl, args); 763 va_end(args); 764 return (icalproperty*)impl; 765 } 766 767 /* CREATED */ 768 icalproperty* icalproperty_new_created(struct icaltimetype v) { 769 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_CREATED_PROPERTY); 770 icalproperty_set_created((icalproperty*)impl,v); 771 return (icalproperty*)impl; 772 } 773 774 void icalproperty_set_created(icalproperty* prop, struct icaltimetype v){ 775 776 icalerror_check_arg_rv( (prop!=0),"prop"); 777 icalproperty_set_value(prop,icalvalue_new_datetime(v)); 778 } 779 struct icaltimetype icalproperty_get_created(const icalproperty* prop){ 780 icalerror_check_arg( (prop!=0),"prop"); 781 return icalvalue_get_datetime(icalproperty_get_value(prop)); 782 } 783 icalproperty* icalproperty_vanew_csid(const char* v, ...){ 784 va_list args; 785 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_CSID_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 786 787 icalproperty_set_csid((icalproperty*)impl,v); 788 va_start(args,v); 789 icalproperty_add_parameters(impl, args); 790 va_end(args); 791 return (icalproperty*)impl; 792 } 793 794 /* CSID */ 795 icalproperty* icalproperty_new_csid(const char* v) { 796 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_CSID_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 797 798 icalproperty_set_csid((icalproperty*)impl,v); 799 return (icalproperty*)impl; 800 } 801 802 void icalproperty_set_csid(icalproperty* prop, const char* v){ 803 icalerror_check_arg_rv( (v!=0),"v"); 804 805 icalerror_check_arg_rv( (prop!=0),"prop"); 806 icalproperty_set_value(prop,icalvalue_new_uri(v)); 807 } 808 const char* icalproperty_get_csid(const icalproperty* prop){ 809 icalerror_check_arg( (prop!=0),"prop"); 810 return icalvalue_get_uri(icalproperty_get_value(prop)); 811 } 812 icalproperty* icalproperty_vanew_datemax(struct icaltimetype v, ...){ 813 va_list args; 814 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_DATEMAX_PROPERTY); 815 icalproperty_set_datemax((icalproperty*)impl,v); 816 va_start(args,v); 817 icalproperty_add_parameters(impl, args); 818 va_end(args); 819 return (icalproperty*)impl; 820 } 821 822 /* DATE-MAX */ 823 icalproperty* icalproperty_new_datemax(struct icaltimetype v) { 824 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_DATEMAX_PROPERTY); 825 icalproperty_set_datemax((icalproperty*)impl,v); 826 return (icalproperty*)impl; 827 } 828 829 void icalproperty_set_datemax(icalproperty* prop, struct icaltimetype v){ 830 831 icalerror_check_arg_rv( (prop!=0),"prop"); 832 icalproperty_set_value(prop,icalvalue_new_datetime(v)); 833 } 834 struct icaltimetype icalproperty_get_datemax(const icalproperty* prop){ 835 icalerror_check_arg( (prop!=0),"prop"); 836 return icalvalue_get_datetime(icalproperty_get_value(prop)); 837 } 838 icalproperty* icalproperty_vanew_datemin(struct icaltimetype v, ...){ 839 va_list args; 840 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_DATEMIN_PROPERTY); 841 icalproperty_set_datemin((icalproperty*)impl,v); 842 va_start(args,v); 843 icalproperty_add_parameters(impl, args); 844 va_end(args); 845 return (icalproperty*)impl; 846 } 847 848 /* DATE-MIN */ 849 icalproperty* icalproperty_new_datemin(struct icaltimetype v) { 850 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_DATEMIN_PROPERTY); 851 icalproperty_set_datemin((icalproperty*)impl,v); 852 return (icalproperty*)impl; 853 } 854 855 void icalproperty_set_datemin(icalproperty* prop, struct icaltimetype v){ 856 857 icalerror_check_arg_rv( (prop!=0),"prop"); 858 icalproperty_set_value(prop,icalvalue_new_datetime(v)); 859 } 860 struct icaltimetype icalproperty_get_datemin(const icalproperty* prop){ 861 icalerror_check_arg( (prop!=0),"prop"); 862 return icalvalue_get_datetime(icalproperty_get_value(prop)); 863 } 864 icalproperty* icalproperty_vanew_decreed(const char* v, ...){ 865 va_list args; 866 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_DECREED_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 867 868 icalproperty_set_decreed((icalproperty*)impl,v); 869 va_start(args,v); 870 icalproperty_add_parameters(impl, args); 871 va_end(args); 872 return (icalproperty*)impl; 873 } 874 875 /* DECREED */ 876 icalproperty* icalproperty_new_decreed(const char* v) { 877 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_DECREED_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 878 879 icalproperty_set_decreed((icalproperty*)impl,v); 880 return (icalproperty*)impl; 881 } 882 883 void icalproperty_set_decreed(icalproperty* prop, const char* v){ 884 icalerror_check_arg_rv( (v!=0),"v"); 885 886 icalerror_check_arg_rv( (prop!=0),"prop"); 887 icalproperty_set_value(prop,icalvalue_new_text(v)); 888 } 889 const char* icalproperty_get_decreed(const icalproperty* prop){ 890 icalerror_check_arg( (prop!=0),"prop"); 891 return icalvalue_get_text(icalproperty_get_value(prop)); 892 } 893 icalproperty* icalproperty_vanew_defaultcharset(const char* v, ...){ 894 va_list args; 895 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_DEFAULTCHARSET_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 896 897 icalproperty_set_defaultcharset((icalproperty*)impl,v); 898 va_start(args,v); 899 icalproperty_add_parameters(impl, args); 900 va_end(args); 901 return (icalproperty*)impl; 902 } 903 904 /* DEFAULT-CHARSET */ 905 icalproperty* icalproperty_new_defaultcharset(const char* v) { 906 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_DEFAULTCHARSET_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 907 908 icalproperty_set_defaultcharset((icalproperty*)impl,v); 909 return (icalproperty*)impl; 910 } 911 912 void icalproperty_set_defaultcharset(icalproperty* prop, const char* v){ 913 icalerror_check_arg_rv( (v!=0),"v"); 914 915 icalerror_check_arg_rv( (prop!=0),"prop"); 916 icalproperty_set_value(prop,icalvalue_new_text(v)); 917 } 918 const char* icalproperty_get_defaultcharset(const icalproperty* prop){ 919 icalerror_check_arg( (prop!=0),"prop"); 920 return icalvalue_get_text(icalproperty_get_value(prop)); 921 } 922 icalproperty* icalproperty_vanew_defaultlocale(const char* v, ...){ 923 va_list args; 924 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_DEFAULTLOCALE_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 925 926 icalproperty_set_defaultlocale((icalproperty*)impl,v); 927 va_start(args,v); 928 icalproperty_add_parameters(impl, args); 929 va_end(args); 930 return (icalproperty*)impl; 931 } 932 933 /* DEFAULT-LOCALE */ 934 icalproperty* icalproperty_new_defaultlocale(const char* v) { 935 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_DEFAULTLOCALE_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 936 937 icalproperty_set_defaultlocale((icalproperty*)impl,v); 938 return (icalproperty*)impl; 939 } 940 941 void icalproperty_set_defaultlocale(icalproperty* prop, const char* v){ 942 icalerror_check_arg_rv( (v!=0),"v"); 943 944 icalerror_check_arg_rv( (prop!=0),"prop"); 945 icalproperty_set_value(prop,icalvalue_new_text(v)); 946 } 947 const char* icalproperty_get_defaultlocale(const icalproperty* prop){ 948 icalerror_check_arg( (prop!=0),"prop"); 949 return icalvalue_get_text(icalproperty_get_value(prop)); 950 } 951 icalproperty* icalproperty_vanew_defaulttzid(const char* v, ...){ 952 va_list args; 953 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_DEFAULTTZID_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 954 955 icalproperty_set_defaulttzid((icalproperty*)impl,v); 956 va_start(args,v); 957 icalproperty_add_parameters(impl, args); 958 va_end(args); 959 return (icalproperty*)impl; 960 } 961 962 /* DEFAULT-TZID */ 963 icalproperty* icalproperty_new_defaulttzid(const char* v) { 964 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_DEFAULTTZID_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 965 966 icalproperty_set_defaulttzid((icalproperty*)impl,v); 967 return (icalproperty*)impl; 968 } 969 970 void icalproperty_set_defaulttzid(icalproperty* prop, const char* v){ 971 icalerror_check_arg_rv( (v!=0),"v"); 972 973 icalerror_check_arg_rv( (prop!=0),"prop"); 974 icalproperty_set_value(prop,icalvalue_new_text(v)); 975 } 976 const char* icalproperty_get_defaulttzid(const icalproperty* prop){ 977 icalerror_check_arg( (prop!=0),"prop"); 978 return icalvalue_get_text(icalproperty_get_value(prop)); 979 } 980 icalproperty* icalproperty_vanew_defaultvcars(const char* v, ...){ 981 va_list args; 982 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_DEFAULTVCARS_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 983 984 icalproperty_set_defaultvcars((icalproperty*)impl,v); 985 va_start(args,v); 986 icalproperty_add_parameters(impl, args); 987 va_end(args); 988 return (icalproperty*)impl; 989 } 990 991 /* DEFAULT-VCARS */ 992 icalproperty* icalproperty_new_defaultvcars(const char* v) { 993 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_DEFAULTVCARS_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 994 995 icalproperty_set_defaultvcars((icalproperty*)impl,v); 996 return (icalproperty*)impl; 997 } 998 999 void icalproperty_set_defaultvcars(icalproperty* prop, const char* v){ 1000 icalerror_check_arg_rv( (v!=0),"v"); 1001 1002 icalerror_check_arg_rv( (prop!=0),"prop"); 1003 icalproperty_set_value(prop,icalvalue_new_text(v)); 1004 } 1005 const char* icalproperty_get_defaultvcars(const icalproperty* prop){ 1006 icalerror_check_arg( (prop!=0),"prop"); 1007 return icalvalue_get_text(icalproperty_get_value(prop)); 1008 } 1009 icalproperty* icalproperty_vanew_deny(const char* v, ...){ 1010 va_list args; 1011 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_DENY_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 1012 1013 icalproperty_set_deny((icalproperty*)impl,v); 1014 va_start(args,v); 1015 icalproperty_add_parameters(impl, args); 1016 va_end(args); 1017 return (icalproperty*)impl; 1018 } 1019 1020 /* DENY */ 1021 icalproperty* icalproperty_new_deny(const char* v) { 1022 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_DENY_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 1023 1024 icalproperty_set_deny((icalproperty*)impl,v); 1025 return (icalproperty*)impl; 1026 } 1027 1028 void icalproperty_set_deny(icalproperty* prop, const char* v){ 1029 icalerror_check_arg_rv( (v!=0),"v"); 1030 1031 icalerror_check_arg_rv( (prop!=0),"prop"); 1032 icalproperty_set_value(prop,icalvalue_new_text(v)); 1033 } 1034 const char* icalproperty_get_deny(const icalproperty* prop){ 1035 icalerror_check_arg( (prop!=0),"prop"); 1036 return icalvalue_get_text(icalproperty_get_value(prop)); 1037 } 1038 icalproperty* icalproperty_vanew_description(const char* v, ...){ 1039 va_list args; 1040 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_DESCRIPTION_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 1041 1042 icalproperty_set_description((icalproperty*)impl,v); 1043 va_start(args,v); 1044 icalproperty_add_parameters(impl, args); 1045 va_end(args); 1046 return (icalproperty*)impl; 1047 } 1048 1049 /* DESCRIPTION */ 1050 icalproperty* icalproperty_new_description(const char* v) { 1051 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_DESCRIPTION_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 1052 1053 icalproperty_set_description((icalproperty*)impl,v); 1054 return (icalproperty*)impl; 1055 } 1056 1057 void icalproperty_set_description(icalproperty* prop, const char* v){ 1058 icalerror_check_arg_rv( (v!=0),"v"); 1059 1060 icalerror_check_arg_rv( (prop!=0),"prop"); 1061 icalproperty_set_value(prop,icalvalue_new_text(v)); 1062 } 1063 const char* icalproperty_get_description(const icalproperty* prop){ 1064 icalerror_check_arg( (prop!=0),"prop"); 1065 return icalvalue_get_text(icalproperty_get_value(prop)); 1066 } 1067 icalproperty* icalproperty_vanew_dtend(struct icaltimetype v, ...){ 1068 va_list args; 1069 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_DTEND_PROPERTY); 1070 icalproperty_set_dtend((icalproperty*)impl,v); 1071 va_start(args,v); 1072 icalproperty_add_parameters(impl, args); 1073 va_end(args); 1074 return (icalproperty*)impl; 1075 } 1076 1077 /* DTEND */ 1078 icalproperty* icalproperty_new_dtend(struct icaltimetype v) { 1079 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_DTEND_PROPERTY); 1080 icalproperty_set_dtend((icalproperty*)impl,v); 1081 return (icalproperty*)impl; 1082 } 1083 1084 void icalproperty_set_dtend(icalproperty* prop, struct icaltimetype v){ 1085 icalvalue *value; 1086 1087 icalerror_check_arg_rv( (prop!=0),"prop"); 1088 if (v.is_date) 1089 value = icalvalue_new_date(v); 1090 else 1091 value = icalvalue_new_datetime(v); 1092 icalproperty_set_value(prop,value); 1093 } 1094 struct icaltimetype icalproperty_get_dtend(const icalproperty* prop){ 1095 icalerror_check_arg( (prop!=0),"prop"); 1096 return icalvalue_get_datetime(icalproperty_get_value(prop)); 1097 } 1098 icalproperty* icalproperty_vanew_dtstamp(struct icaltimetype v, ...){ 1099 va_list args; 1100 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_DTSTAMP_PROPERTY); 1101 icalproperty_set_dtstamp((icalproperty*)impl,v); 1102 va_start(args,v); 1103 icalproperty_add_parameters(impl, args); 1104 va_end(args); 1105 return (icalproperty*)impl; 1106 } 1107 1108 /* DTSTAMP */ 1109 icalproperty* icalproperty_new_dtstamp(struct icaltimetype v) { 1110 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_DTSTAMP_PROPERTY); 1111 icalproperty_set_dtstamp((icalproperty*)impl,v); 1112 return (icalproperty*)impl; 1113 } 1114 1115 void icalproperty_set_dtstamp(icalproperty* prop, struct icaltimetype v){ 1116 1117 icalerror_check_arg_rv( (prop!=0),"prop"); 1118 icalproperty_set_value(prop,icalvalue_new_datetime(v)); 1119 } 1120 struct icaltimetype icalproperty_get_dtstamp(const icalproperty* prop){ 1121 icalerror_check_arg( (prop!=0),"prop"); 1122 return icalvalue_get_datetime(icalproperty_get_value(prop)); 1123 } 1124 icalproperty* icalproperty_vanew_dtstart(struct icaltimetype v, ...){ 1125 va_list args; 1126 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_DTSTART_PROPERTY); 1127 icalproperty_set_dtstart((icalproperty*)impl,v); 1128 va_start(args,v); 1129 icalproperty_add_parameters(impl, args); 1130 va_end(args); 1131 return (icalproperty*)impl; 1132 } 1133 1134 /* DTSTART */ 1135 icalproperty* icalproperty_new_dtstart(struct icaltimetype v) { 1136 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_DTSTART_PROPERTY); 1137 icalproperty_set_dtstart((icalproperty*)impl,v); 1138 return (icalproperty*)impl; 1139 } 1140 1141 void icalproperty_set_dtstart(icalproperty* prop, struct icaltimetype v){ 1142 icalvalue *value; 1143 1144 icalerror_check_arg_rv( (prop!=0),"prop"); 1145 if (v.is_date) 1146 value = icalvalue_new_date(v); 1147 else 1148 value = icalvalue_new_datetime(v); 1149 icalproperty_set_value(prop,value); 1150 } 1151 struct icaltimetype icalproperty_get_dtstart(const icalproperty* prop){ 1152 icalerror_check_arg( (prop!=0),"prop"); 1153 return icalvalue_get_datetime(icalproperty_get_value(prop)); 1154 } 1155 icalproperty* icalproperty_vanew_due(struct icaltimetype v, ...){ 1156 va_list args; 1157 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_DUE_PROPERTY); 1158 icalproperty_set_due((icalproperty*)impl,v); 1159 va_start(args,v); 1160 icalproperty_add_parameters(impl, args); 1161 va_end(args); 1162 return (icalproperty*)impl; 1163 } 1164 1165 /* DUE */ 1166 icalproperty* icalproperty_new_due(struct icaltimetype v) { 1167 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_DUE_PROPERTY); 1168 icalproperty_set_due((icalproperty*)impl,v); 1169 return (icalproperty*)impl; 1170 } 1171 1172 void icalproperty_set_due(icalproperty* prop, struct icaltimetype v){ 1173 icalvalue *value; 1174 1175 icalerror_check_arg_rv( (prop!=0),"prop"); 1176 if (v.is_date) 1177 value = icalvalue_new_date(v); 1178 else 1179 value = icalvalue_new_datetime(v); 1180 icalproperty_set_value(prop,value); 1181 } 1182 struct icaltimetype icalproperty_get_due(const icalproperty* prop){ 1183 icalerror_check_arg( (prop!=0),"prop"); 1184 return icalvalue_get_datetime(icalproperty_get_value(prop)); 1185 } 1186 icalproperty* icalproperty_vanew_duration(struct icaldurationtype v, ...){ 1187 va_list args; 1188 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_DURATION_PROPERTY); 1189 icalproperty_set_duration((icalproperty*)impl,v); 1190 va_start(args,v); 1191 icalproperty_add_parameters(impl, args); 1192 va_end(args); 1193 return (icalproperty*)impl; 1194 } 1195 1196 /* DURATION */ 1197 icalproperty* icalproperty_new_duration(struct icaldurationtype v) { 1198 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_DURATION_PROPERTY); 1199 icalproperty_set_duration((icalproperty*)impl,v); 1200 return (icalproperty*)impl; 1201 } 1202 1203 void icalproperty_set_duration(icalproperty* prop, struct icaldurationtype v){ 1204 1205 icalerror_check_arg_rv( (prop!=0),"prop"); 1206 icalproperty_set_value(prop,icalvalue_new_duration(v)); 1207 } 1208 struct icaldurationtype icalproperty_get_duration(const icalproperty* prop){ 1209 icalerror_check_arg( (prop!=0),"prop"); 1210 return icalvalue_get_duration(icalproperty_get_value(prop)); 1211 } 1212 icalproperty* icalproperty_vanew_exdate(struct icaltimetype v, ...){ 1213 va_list args; 1214 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_EXDATE_PROPERTY); 1215 icalproperty_set_exdate((icalproperty*)impl,v); 1216 va_start(args,v); 1217 icalproperty_add_parameters(impl, args); 1218 va_end(args); 1219 return (icalproperty*)impl; 1220 } 1221 1222 /* EXDATE */ 1223 icalproperty* icalproperty_new_exdate(struct icaltimetype v) { 1224 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_EXDATE_PROPERTY); 1225 icalproperty_set_exdate((icalproperty*)impl,v); 1226 return (icalproperty*)impl; 1227 } 1228 1229 void icalproperty_set_exdate(icalproperty* prop, struct icaltimetype v){ 1230 icalvalue *value; 1231 1232 icalerror_check_arg_rv( (prop!=0),"prop"); 1233 if (v.is_date) 1234 value = icalvalue_new_date(v); 1235 else 1236 value = icalvalue_new_datetime(v); 1237 icalproperty_set_value(prop,value); 1238 } 1239 struct icaltimetype icalproperty_get_exdate(const icalproperty* prop){ 1240 icalerror_check_arg( (prop!=0),"prop"); 1241 #ifndef _MSC_VER 1242 /* 1243 * Code by dirk@objectpark.net: 1244 * Set the time zone manually. I am really puzzled that 1245 * it doesnot work automatically like in the other functions 1246 * like icalproperty_get_dtstart(). 1247 */ 1248 struct icaltimetype itt = 1249 icalvalue_get_datetime(icalproperty_get_value(prop)); 1250 icalparameter* param = icalproperty_get_first_parameter(prop, 1251 ICAL_TZID_PARAMETER); 1252 if (param) { 1253 const icaltimezone *zone = 1254 icaltimezone_get_builtin_timezone(icalparameter_get_tzid(param)); 1255 icaltime_set_timezone(&itt, zone); 1256 } 1257 return itt; 1258 #else 1259 return icalvalue_get_datetime(icalproperty_get_value(prop)); 1260 #endif 1261 } 1262 icalproperty* icalproperty_vanew_expand(int v, ...){ 1263 va_list args; 1264 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_EXPAND_PROPERTY); 1265 icalproperty_set_expand((icalproperty*)impl,v); 1266 va_start(args,v); 1267 icalproperty_add_parameters(impl, args); 1268 va_end(args); 1269 return (icalproperty*)impl; 1270 } 1271 1272 /* EXPAND */ 1273 icalproperty* icalproperty_new_expand(int v) { 1274 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_EXPAND_PROPERTY); 1275 icalproperty_set_expand((icalproperty*)impl,v); 1276 return (icalproperty*)impl; 1277 } 1278 1279 void icalproperty_set_expand(icalproperty* prop, int v){ 1280 1281 icalerror_check_arg_rv( (prop!=0),"prop"); 1282 icalproperty_set_value(prop,icalvalue_new_integer(v)); 1283 } 1284 int icalproperty_get_expand(const icalproperty* prop){ 1285 icalerror_check_arg( (prop!=0),"prop"); 1286 return icalvalue_get_integer(icalproperty_get_value(prop)); 1287 } 1288 icalproperty* icalproperty_vanew_exrule(struct icalrecurrencetype v, ...){ 1289 va_list args; 1290 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_EXRULE_PROPERTY); 1291 icalproperty_set_exrule((icalproperty*)impl,v); 1292 va_start(args,v); 1293 icalproperty_add_parameters(impl, args); 1294 va_end(args); 1295 return (icalproperty*)impl; 1296 } 1297 1298 /* EXRULE */ 1299 icalproperty* icalproperty_new_exrule(struct icalrecurrencetype v) { 1300 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_EXRULE_PROPERTY); 1301 icalproperty_set_exrule((icalproperty*)impl,v); 1302 return (icalproperty*)impl; 1303 } 1304 1305 void icalproperty_set_exrule(icalproperty* prop, struct icalrecurrencetype v){ 1306 1307 icalerror_check_arg_rv( (prop!=0),"prop"); 1308 icalproperty_set_value(prop,icalvalue_new_recur(v)); 1309 } 1310 struct icalrecurrencetype icalproperty_get_exrule(const icalproperty* prop){ 1311 icalerror_check_arg( (prop!=0),"prop"); 1312 return icalvalue_get_recur(icalproperty_get_value(prop)); 1313 } 1314 icalproperty* icalproperty_vanew_freebusy(struct icalperiodtype v, ...){ 1315 va_list args; 1316 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_FREEBUSY_PROPERTY); 1317 icalproperty_set_freebusy((icalproperty*)impl,v); 1318 va_start(args,v); 1319 icalproperty_add_parameters(impl, args); 1320 va_end(args); 1321 return (icalproperty*)impl; 1322 } 1323 1324 /* FREEBUSY */ 1325 icalproperty* icalproperty_new_freebusy(struct icalperiodtype v) { 1326 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_FREEBUSY_PROPERTY); 1327 icalproperty_set_freebusy((icalproperty*)impl,v); 1328 return (icalproperty*)impl; 1329 } 1330 1331 void icalproperty_set_freebusy(icalproperty* prop, struct icalperiodtype v){ 1332 1333 icalerror_check_arg_rv( (prop!=0),"prop"); 1334 icalproperty_set_value(prop,icalvalue_new_period(v)); 1335 } 1336 struct icalperiodtype icalproperty_get_freebusy(const icalproperty* prop){ 1337 icalerror_check_arg( (prop!=0),"prop"); 1338 return icalvalue_get_period(icalproperty_get_value(prop)); 1339 } 1340 icalproperty* icalproperty_vanew_geo(struct icalgeotype v, ...){ 1341 va_list args; 1342 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_GEO_PROPERTY); 1343 icalproperty_set_geo((icalproperty*)impl,v); 1344 va_start(args,v); 1345 icalproperty_add_parameters(impl, args); 1346 va_end(args); 1347 return (icalproperty*)impl; 1348 } 1349 1350 /* GEO */ 1351 icalproperty* icalproperty_new_geo(struct icalgeotype v) { 1352 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_GEO_PROPERTY); 1353 icalproperty_set_geo((icalproperty*)impl,v); 1354 return (icalproperty*)impl; 1355 } 1356 1357 void icalproperty_set_geo(icalproperty* prop, struct icalgeotype v){ 1358 1359 icalerror_check_arg_rv( (prop!=0),"prop"); 1360 icalproperty_set_value(prop,icalvalue_new_geo(v)); 1361 } 1362 struct icalgeotype icalproperty_get_geo(const icalproperty* prop){ 1363 icalerror_check_arg( (prop!=0),"prop"); 1364 return icalvalue_get_geo(icalproperty_get_value(prop)); 1365 } 1366 icalproperty* icalproperty_vanew_grant(const char* v, ...){ 1367 va_list args; 1368 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_GRANT_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 1369 1370 icalproperty_set_grant((icalproperty*)impl,v); 1371 va_start(args,v); 1372 icalproperty_add_parameters(impl, args); 1373 va_end(args); 1374 return (icalproperty*)impl; 1375 } 1376 1377 /* GRANT */ 1378 icalproperty* icalproperty_new_grant(const char* v) { 1379 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_GRANT_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 1380 1381 icalproperty_set_grant((icalproperty*)impl,v); 1382 return (icalproperty*)impl; 1383 } 1384 1385 void icalproperty_set_grant(icalproperty* prop, const char* v){ 1386 icalerror_check_arg_rv( (v!=0),"v"); 1387 1388 icalerror_check_arg_rv( (prop!=0),"prop"); 1389 icalproperty_set_value(prop,icalvalue_new_text(v)); 1390 } 1391 const char* icalproperty_get_grant(const icalproperty* prop){ 1392 icalerror_check_arg( (prop!=0),"prop"); 1393 return icalvalue_get_text(icalproperty_get_value(prop)); 1394 } 1395 icalproperty* icalproperty_vanew_itipversion(const char* v, ...){ 1396 va_list args; 1397 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_ITIPVERSION_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 1398 1399 icalproperty_set_itipversion((icalproperty*)impl,v); 1400 va_start(args,v); 1401 icalproperty_add_parameters(impl, args); 1402 va_end(args); 1403 return (icalproperty*)impl; 1404 } 1405 1406 /* ITIP-VERSION */ 1407 icalproperty* icalproperty_new_itipversion(const char* v) { 1408 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_ITIPVERSION_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 1409 1410 icalproperty_set_itipversion((icalproperty*)impl,v); 1411 return (icalproperty*)impl; 1412 } 1413 1414 void icalproperty_set_itipversion(icalproperty* prop, const char* v){ 1415 icalerror_check_arg_rv( (v!=0),"v"); 1416 1417 icalerror_check_arg_rv( (prop!=0),"prop"); 1418 icalproperty_set_value(prop,icalvalue_new_text(v)); 1419 } 1420 const char* icalproperty_get_itipversion(const icalproperty* prop){ 1421 icalerror_check_arg( (prop!=0),"prop"); 1422 return icalvalue_get_text(icalproperty_get_value(prop)); 1423 } 1424 icalproperty* icalproperty_vanew_lastmodified(struct icaltimetype v, ...){ 1425 va_list args; 1426 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_LASTMODIFIED_PROPERTY); 1427 icalproperty_set_lastmodified((icalproperty*)impl,v); 1428 va_start(args,v); 1429 icalproperty_add_parameters(impl, args); 1430 va_end(args); 1431 return (icalproperty*)impl; 1432 } 1433 1434 /* LAST-MODIFIED */ 1435 icalproperty* icalproperty_new_lastmodified(struct icaltimetype v) { 1436 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_LASTMODIFIED_PROPERTY); 1437 icalproperty_set_lastmodified((icalproperty*)impl,v); 1438 return (icalproperty*)impl; 1439 } 1440 1441 void icalproperty_set_lastmodified(icalproperty* prop, struct icaltimetype v){ 1442 1443 icalerror_check_arg_rv( (prop!=0),"prop"); 1444 icalproperty_set_value(prop,icalvalue_new_datetime(v)); 1445 } 1446 struct icaltimetype icalproperty_get_lastmodified(const icalproperty* prop){ 1447 icalerror_check_arg( (prop!=0),"prop"); 1448 return icalvalue_get_datetime(icalproperty_get_value(prop)); 1449 } 1450 icalproperty* icalproperty_vanew_location(const char* v, ...){ 1451 va_list args; 1452 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_LOCATION_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 1453 1454 icalproperty_set_location((icalproperty*)impl,v); 1455 va_start(args,v); 1456 icalproperty_add_parameters(impl, args); 1457 va_end(args); 1458 return (icalproperty*)impl; 1459 } 1460 1461 /* LOCATION */ 1462 icalproperty* icalproperty_new_location(const char* v) { 1463 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_LOCATION_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 1464 1465 icalproperty_set_location((icalproperty*)impl,v); 1466 return (icalproperty*)impl; 1467 } 1468 1469 void icalproperty_set_location(icalproperty* prop, const char* v){ 1470 icalerror_check_arg_rv( (v!=0),"v"); 1471 1472 icalerror_check_arg_rv( (prop!=0),"prop"); 1473 icalproperty_set_value(prop,icalvalue_new_text(v)); 1474 } 1475 const char* icalproperty_get_location(const icalproperty* prop){ 1476 icalerror_check_arg( (prop!=0),"prop"); 1477 return icalvalue_get_text(icalproperty_get_value(prop)); 1478 } 1479 icalproperty* icalproperty_vanew_maxcomponentsize(int v, ...){ 1480 va_list args; 1481 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_MAXCOMPONENTSIZE_PROPERTY); 1482 icalproperty_set_maxcomponentsize((icalproperty*)impl,v); 1483 va_start(args,v); 1484 icalproperty_add_parameters(impl, args); 1485 va_end(args); 1486 return (icalproperty*)impl; 1487 } 1488 1489 /* MAX-COMPONENT-SIZE */ 1490 icalproperty* icalproperty_new_maxcomponentsize(int v) { 1491 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_MAXCOMPONENTSIZE_PROPERTY); 1492 icalproperty_set_maxcomponentsize((icalproperty*)impl,v); 1493 return (icalproperty*)impl; 1494 } 1495 1496 void icalproperty_set_maxcomponentsize(icalproperty* prop, int v){ 1497 1498 icalerror_check_arg_rv( (prop!=0),"prop"); 1499 icalproperty_set_value(prop,icalvalue_new_integer(v)); 1500 } 1501 int icalproperty_get_maxcomponentsize(const icalproperty* prop){ 1502 icalerror_check_arg( (prop!=0),"prop"); 1503 return icalvalue_get_integer(icalproperty_get_value(prop)); 1504 } 1505 icalproperty* icalproperty_vanew_maxdate(struct icaltimetype v, ...){ 1506 va_list args; 1507 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_MAXDATE_PROPERTY); 1508 icalproperty_set_maxdate((icalproperty*)impl,v); 1509 va_start(args,v); 1510 icalproperty_add_parameters(impl, args); 1511 va_end(args); 1512 return (icalproperty*)impl; 1513 } 1514 1515 /* MAXDATE */ 1516 icalproperty* icalproperty_new_maxdate(struct icaltimetype v) { 1517 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_MAXDATE_PROPERTY); 1518 icalproperty_set_maxdate((icalproperty*)impl,v); 1519 return (icalproperty*)impl; 1520 } 1521 1522 void icalproperty_set_maxdate(icalproperty* prop, struct icaltimetype v){ 1523 1524 icalerror_check_arg_rv( (prop!=0),"prop"); 1525 icalproperty_set_value(prop,icalvalue_new_datetime(v)); 1526 } 1527 struct icaltimetype icalproperty_get_maxdate(const icalproperty* prop){ 1528 icalerror_check_arg( (prop!=0),"prop"); 1529 return icalvalue_get_datetime(icalproperty_get_value(prop)); 1530 } 1531 icalproperty* icalproperty_vanew_maxresults(int v, ...){ 1532 va_list args; 1533 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_MAXRESULTS_PROPERTY); 1534 icalproperty_set_maxresults((icalproperty*)impl,v); 1535 va_start(args,v); 1536 icalproperty_add_parameters(impl, args); 1537 va_end(args); 1538 return (icalproperty*)impl; 1539 } 1540 1541 /* MAXRESULTS */ 1542 icalproperty* icalproperty_new_maxresults(int v) { 1543 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_MAXRESULTS_PROPERTY); 1544 icalproperty_set_maxresults((icalproperty*)impl,v); 1545 return (icalproperty*)impl; 1546 } 1547 1548 void icalproperty_set_maxresults(icalproperty* prop, int v){ 1549 1550 icalerror_check_arg_rv( (prop!=0),"prop"); 1551 icalproperty_set_value(prop,icalvalue_new_integer(v)); 1552 } 1553 int icalproperty_get_maxresults(const icalproperty* prop){ 1554 icalerror_check_arg( (prop!=0),"prop"); 1555 return icalvalue_get_integer(icalproperty_get_value(prop)); 1556 } 1557 icalproperty* icalproperty_vanew_maxresultssize(int v, ...){ 1558 va_list args; 1559 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_MAXRESULTSSIZE_PROPERTY); 1560 icalproperty_set_maxresultssize((icalproperty*)impl,v); 1561 va_start(args,v); 1562 icalproperty_add_parameters(impl, args); 1563 va_end(args); 1564 return (icalproperty*)impl; 1565 } 1566 1567 /* MAXRESULTSSIZE */ 1568 icalproperty* icalproperty_new_maxresultssize(int v) { 1569 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_MAXRESULTSSIZE_PROPERTY); 1570 icalproperty_set_maxresultssize((icalproperty*)impl,v); 1571 return (icalproperty*)impl; 1572 } 1573 1574 void icalproperty_set_maxresultssize(icalproperty* prop, int v){ 1575 1576 icalerror_check_arg_rv( (prop!=0),"prop"); 1577 icalproperty_set_value(prop,icalvalue_new_integer(v)); 1578 } 1579 int icalproperty_get_maxresultssize(const icalproperty* prop){ 1580 icalerror_check_arg( (prop!=0),"prop"); 1581 return icalvalue_get_integer(icalproperty_get_value(prop)); 1582 } 1583 icalproperty* icalproperty_vanew_method(enum icalproperty_method v, ...){ 1584 va_list args; 1585 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_METHOD_PROPERTY); 1586 icalproperty_set_method((icalproperty*)impl,v); 1587 va_start(args,v); 1588 icalproperty_add_parameters(impl, args); 1589 va_end(args); 1590 return (icalproperty*)impl; 1591 } 1592 1593 /* METHOD */ 1594 icalproperty* icalproperty_new_method(enum icalproperty_method v) { 1595 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_METHOD_PROPERTY); 1596 icalproperty_set_method((icalproperty*)impl,v); 1597 return (icalproperty*)impl; 1598 } 1599 1600 void icalproperty_set_method(icalproperty* prop, enum icalproperty_method v){ 1601 1602 icalerror_check_arg_rv( (prop!=0),"prop"); 1603 icalproperty_set_value(prop,icalvalue_new_method(v)); 1604 } 1605 enum icalproperty_method icalproperty_get_method(const icalproperty* prop){ 1606 icalerror_check_arg( (prop!=0),"prop"); 1607 return icalvalue_get_method(icalproperty_get_value(prop)); 1608 } 1609 icalproperty* icalproperty_vanew_mindate(struct icaltimetype v, ...){ 1610 va_list args; 1611 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_MINDATE_PROPERTY); 1612 icalproperty_set_mindate((icalproperty*)impl,v); 1613 va_start(args,v); 1614 icalproperty_add_parameters(impl, args); 1615 va_end(args); 1616 return (icalproperty*)impl; 1617 } 1618 1619 /* MINDATE */ 1620 icalproperty* icalproperty_new_mindate(struct icaltimetype v) { 1621 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_MINDATE_PROPERTY); 1622 icalproperty_set_mindate((icalproperty*)impl,v); 1623 return (icalproperty*)impl; 1624 } 1625 1626 void icalproperty_set_mindate(icalproperty* prop, struct icaltimetype v){ 1627 1628 icalerror_check_arg_rv( (prop!=0),"prop"); 1629 icalproperty_set_value(prop,icalvalue_new_datetime(v)); 1630 } 1631 struct icaltimetype icalproperty_get_mindate(const icalproperty* prop){ 1632 icalerror_check_arg( (prop!=0),"prop"); 1633 return icalvalue_get_datetime(icalproperty_get_value(prop)); 1634 } 1635 icalproperty* icalproperty_vanew_multipart(const char* v, ...){ 1636 va_list args; 1637 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_MULTIPART_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 1638 1639 icalproperty_set_multipart((icalproperty*)impl,v); 1640 va_start(args,v); 1641 icalproperty_add_parameters(impl, args); 1642 va_end(args); 1643 return (icalproperty*)impl; 1644 } 1645 1646 /* MULTIPART */ 1647 icalproperty* icalproperty_new_multipart(const char* v) { 1648 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_MULTIPART_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 1649 1650 icalproperty_set_multipart((icalproperty*)impl,v); 1651 return (icalproperty*)impl; 1652 } 1653 1654 void icalproperty_set_multipart(icalproperty* prop, const char* v){ 1655 icalerror_check_arg_rv( (v!=0),"v"); 1656 1657 icalerror_check_arg_rv( (prop!=0),"prop"); 1658 icalproperty_set_value(prop,icalvalue_new_text(v)); 1659 } 1660 const char* icalproperty_get_multipart(const icalproperty* prop){ 1661 icalerror_check_arg( (prop!=0),"prop"); 1662 return icalvalue_get_text(icalproperty_get_value(prop)); 1663 } 1664 icalproperty* icalproperty_vanew_name(const char* v, ...){ 1665 va_list args; 1666 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_NAME_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 1667 1668 icalproperty_set_name((icalproperty*)impl,v); 1669 va_start(args,v); 1670 icalproperty_add_parameters(impl, args); 1671 va_end(args); 1672 return (icalproperty*)impl; 1673 } 1674 1675 /* NAME */ 1676 icalproperty* icalproperty_new_name(const char* v) { 1677 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_NAME_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 1678 1679 icalproperty_set_name((icalproperty*)impl,v); 1680 return (icalproperty*)impl; 1681 } 1682 1683 void icalproperty_set_name(icalproperty* prop, const char* v){ 1684 icalerror_check_arg_rv( (v!=0),"v"); 1685 1686 icalerror_check_arg_rv( (prop!=0),"prop"); 1687 icalproperty_set_value(prop,icalvalue_new_text(v)); 1688 } 1689 const char* icalproperty_get_name(const icalproperty* prop){ 1690 icalerror_check_arg( (prop!=0),"prop"); 1691 return icalvalue_get_text(icalproperty_get_value(prop)); 1692 } 1693 icalproperty* icalproperty_vanew_organizer(const char* v, ...){ 1694 va_list args; 1695 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_ORGANIZER_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 1696 1697 icalproperty_set_organizer((icalproperty*)impl,v); 1698 va_start(args,v); 1699 icalproperty_add_parameters(impl, args); 1700 va_end(args); 1701 return (icalproperty*)impl; 1702 } 1703 1704 /* ORGANIZER */ 1705 icalproperty* icalproperty_new_organizer(const char* v) { 1706 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_ORGANIZER_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 1707 1708 icalproperty_set_organizer((icalproperty*)impl,v); 1709 return (icalproperty*)impl; 1710 } 1711 1712 void icalproperty_set_organizer(icalproperty* prop, const char* v){ 1713 icalerror_check_arg_rv( (v!=0),"v"); 1714 1715 icalerror_check_arg_rv( (prop!=0),"prop"); 1716 icalproperty_set_value(prop,icalvalue_new_caladdress(v)); 1717 } 1718 const char* icalproperty_get_organizer(const icalproperty* prop){ 1719 icalerror_check_arg( (prop!=0),"prop"); 1720 return icalvalue_get_caladdress(icalproperty_get_value(prop)); 1721 } 1722 icalproperty* icalproperty_vanew_owner(const char* v, ...){ 1723 va_list args; 1724 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_OWNER_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 1725 1726 icalproperty_set_owner((icalproperty*)impl,v); 1727 va_start(args,v); 1728 icalproperty_add_parameters(impl, args); 1729 va_end(args); 1730 return (icalproperty*)impl; 1731 } 1732 1733 /* OWNER */ 1734 icalproperty* icalproperty_new_owner(const char* v) { 1735 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_OWNER_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 1736 1737 icalproperty_set_owner((icalproperty*)impl,v); 1738 return (icalproperty*)impl; 1739 } 1740 1741 void icalproperty_set_owner(icalproperty* prop, const char* v){ 1742 icalerror_check_arg_rv( (v!=0),"v"); 1743 1744 icalerror_check_arg_rv( (prop!=0),"prop"); 1745 icalproperty_set_value(prop,icalvalue_new_text(v)); 1746 } 1747 const char* icalproperty_get_owner(const icalproperty* prop){ 1748 icalerror_check_arg( (prop!=0),"prop"); 1749 return icalvalue_get_text(icalproperty_get_value(prop)); 1750 } 1751 icalproperty* icalproperty_vanew_percentcomplete(int v, ...){ 1752 va_list args; 1753 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_PERCENTCOMPLETE_PROPERTY); 1754 icalproperty_set_percentcomplete((icalproperty*)impl,v); 1755 va_start(args,v); 1756 icalproperty_add_parameters(impl, args); 1757 va_end(args); 1758 return (icalproperty*)impl; 1759 } 1760 1761 /* PERCENT-COMPLETE */ 1762 icalproperty* icalproperty_new_percentcomplete(int v) { 1763 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_PERCENTCOMPLETE_PROPERTY); 1764 icalproperty_set_percentcomplete((icalproperty*)impl,v); 1765 return (icalproperty*)impl; 1766 } 1767 1768 void icalproperty_set_percentcomplete(icalproperty* prop, int v){ 1769 1770 icalerror_check_arg_rv( (prop!=0),"prop"); 1771 icalproperty_set_value(prop,icalvalue_new_integer(v)); 1772 } 1773 int icalproperty_get_percentcomplete(const icalproperty* prop){ 1774 icalerror_check_arg( (prop!=0),"prop"); 1775 return icalvalue_get_integer(icalproperty_get_value(prop)); 1776 } 1777 icalproperty* icalproperty_vanew_permission(const char* v, ...){ 1778 va_list args; 1779 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_PERMISSION_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 1780 1781 icalproperty_set_permission((icalproperty*)impl,v); 1782 va_start(args,v); 1783 icalproperty_add_parameters(impl, args); 1784 va_end(args); 1785 return (icalproperty*)impl; 1786 } 1787 1788 /* PERMISSION */ 1789 icalproperty* icalproperty_new_permission(const char* v) { 1790 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_PERMISSION_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 1791 1792 icalproperty_set_permission((icalproperty*)impl,v); 1793 return (icalproperty*)impl; 1794 } 1795 1796 void icalproperty_set_permission(icalproperty* prop, const char* v){ 1797 icalerror_check_arg_rv( (v!=0),"v"); 1798 1799 icalerror_check_arg_rv( (prop!=0),"prop"); 1800 icalproperty_set_value(prop,icalvalue_new_text(v)); 1801 } 1802 const char* icalproperty_get_permission(const icalproperty* prop){ 1803 icalerror_check_arg( (prop!=0),"prop"); 1804 return icalvalue_get_text(icalproperty_get_value(prop)); 1805 } 1806 icalproperty* icalproperty_vanew_priority(int v, ...){ 1807 va_list args; 1808 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_PRIORITY_PROPERTY); 1809 icalproperty_set_priority((icalproperty*)impl,v); 1810 va_start(args,v); 1811 icalproperty_add_parameters(impl, args); 1812 va_end(args); 1813 return (icalproperty*)impl; 1814 } 1815 1816 /* PRIORITY */ 1817 icalproperty* icalproperty_new_priority(int v) { 1818 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_PRIORITY_PROPERTY); 1819 icalproperty_set_priority((icalproperty*)impl,v); 1820 return (icalproperty*)impl; 1821 } 1822 1823 void icalproperty_set_priority(icalproperty* prop, int v){ 1824 1825 icalerror_check_arg_rv( (prop!=0),"prop"); 1826 icalproperty_set_value(prop,icalvalue_new_integer(v)); 1827 } 1828 int icalproperty_get_priority(const icalproperty* prop){ 1829 icalerror_check_arg( (prop!=0),"prop"); 1830 return icalvalue_get_integer(icalproperty_get_value(prop)); 1831 } 1832 icalproperty* icalproperty_vanew_prodid(const char* v, ...){ 1833 va_list args; 1834 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_PRODID_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 1835 1836 icalproperty_set_prodid((icalproperty*)impl,v); 1837 va_start(args,v); 1838 icalproperty_add_parameters(impl, args); 1839 va_end(args); 1840 return (icalproperty*)impl; 1841 } 1842 1843 /* PRODID */ 1844 icalproperty* icalproperty_new_prodid(const char* v) { 1845 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_PRODID_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 1846 1847 icalproperty_set_prodid((icalproperty*)impl,v); 1848 return (icalproperty*)impl; 1849 } 1850 1851 void icalproperty_set_prodid(icalproperty* prop, const char* v){ 1852 icalerror_check_arg_rv( (v!=0),"v"); 1853 1854 icalerror_check_arg_rv( (prop!=0),"prop"); 1855 icalproperty_set_value(prop,icalvalue_new_text(v)); 1856 } 1857 const char* icalproperty_get_prodid(const icalproperty* prop){ 1858 icalerror_check_arg( (prop!=0),"prop"); 1859 return icalvalue_get_text(icalproperty_get_value(prop)); 1860 } 1861 icalproperty* icalproperty_vanew_query(const char* v, ...){ 1862 va_list args; 1863 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_QUERY_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 1864 1865 icalproperty_set_query((icalproperty*)impl,v); 1866 va_start(args,v); 1867 icalproperty_add_parameters(impl, args); 1868 va_end(args); 1869 return (icalproperty*)impl; 1870 } 1871 1872 /* QUERY */ 1873 icalproperty* icalproperty_new_query(const char* v) { 1874 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_QUERY_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 1875 1876 icalproperty_set_query((icalproperty*)impl,v); 1877 return (icalproperty*)impl; 1878 } 1879 1880 void icalproperty_set_query(icalproperty* prop, const char* v){ 1881 icalerror_check_arg_rv( (v!=0),"v"); 1882 1883 icalerror_check_arg_rv( (prop!=0),"prop"); 1884 icalproperty_set_value(prop,icalvalue_new_query(v)); 1885 } 1886 const char* icalproperty_get_query(const icalproperty* prop){ 1887 icalerror_check_arg( (prop!=0),"prop"); 1888 return icalvalue_get_query(icalproperty_get_value(prop)); 1889 } 1890 icalproperty* icalproperty_vanew_querylevel(enum icalproperty_querylevel v, ...){ 1891 va_list args; 1892 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_QUERYLEVEL_PROPERTY); 1893 icalproperty_set_querylevel((icalproperty*)impl,v); 1894 va_start(args,v); 1895 icalproperty_add_parameters(impl, args); 1896 va_end(args); 1897 return (icalproperty*)impl; 1898 } 1899 1900 /* QUERY-LEVEL */ 1901 icalproperty* icalproperty_new_querylevel(enum icalproperty_querylevel v) { 1902 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_QUERYLEVEL_PROPERTY); 1903 icalproperty_set_querylevel((icalproperty*)impl,v); 1904 return (icalproperty*)impl; 1905 } 1906 1907 void icalproperty_set_querylevel(icalproperty* prop, enum icalproperty_querylevel v){ 1908 1909 icalerror_check_arg_rv( (prop!=0),"prop"); 1910 icalproperty_set_value(prop,icalvalue_new_querylevel(v)); 1911 } 1912 enum icalproperty_querylevel icalproperty_get_querylevel(const icalproperty* prop){ 1913 icalerror_check_arg( (prop!=0),"prop"); 1914 return icalvalue_get_querylevel(icalproperty_get_value(prop)); 1915 } 1916 icalproperty* icalproperty_vanew_queryid(const char* v, ...){ 1917 va_list args; 1918 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_QUERYID_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 1919 1920 icalproperty_set_queryid((icalproperty*)impl,v); 1921 va_start(args,v); 1922 icalproperty_add_parameters(impl, args); 1923 va_end(args); 1924 return (icalproperty*)impl; 1925 } 1926 1927 /* QUERYID */ 1928 icalproperty* icalproperty_new_queryid(const char* v) { 1929 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_QUERYID_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 1930 1931 icalproperty_set_queryid((icalproperty*)impl,v); 1932 return (icalproperty*)impl; 1933 } 1934 1935 void icalproperty_set_queryid(icalproperty* prop, const char* v){ 1936 icalerror_check_arg_rv( (v!=0),"v"); 1937 1938 icalerror_check_arg_rv( (prop!=0),"prop"); 1939 icalproperty_set_value(prop,icalvalue_new_text(v)); 1940 } 1941 const char* icalproperty_get_queryid(const icalproperty* prop){ 1942 icalerror_check_arg( (prop!=0),"prop"); 1943 return icalvalue_get_text(icalproperty_get_value(prop)); 1944 } 1945 icalproperty* icalproperty_vanew_queryname(const char* v, ...){ 1946 va_list args; 1947 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_QUERYNAME_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 1948 1949 icalproperty_set_queryname((icalproperty*)impl,v); 1950 va_start(args,v); 1951 icalproperty_add_parameters(impl, args); 1952 va_end(args); 1953 return (icalproperty*)impl; 1954 } 1955 1956 /* QUERYNAME */ 1957 icalproperty* icalproperty_new_queryname(const char* v) { 1958 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_QUERYNAME_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 1959 1960 icalproperty_set_queryname((icalproperty*)impl,v); 1961 return (icalproperty*)impl; 1962 } 1963 1964 void icalproperty_set_queryname(icalproperty* prop, const char* v){ 1965 icalerror_check_arg_rv( (v!=0),"v"); 1966 1967 icalerror_check_arg_rv( (prop!=0),"prop"); 1968 icalproperty_set_value(prop,icalvalue_new_text(v)); 1969 } 1970 const char* icalproperty_get_queryname(const icalproperty* prop){ 1971 icalerror_check_arg( (prop!=0),"prop"); 1972 return icalvalue_get_text(icalproperty_get_value(prop)); 1973 } 1974 icalproperty* icalproperty_vanew_rdate(struct icaldatetimeperiodtype v, ...){ 1975 va_list args; 1976 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_RDATE_PROPERTY); 1977 icalproperty_set_rdate((icalproperty*)impl,v); 1978 va_start(args,v); 1979 icalproperty_add_parameters(impl, args); 1980 va_end(args); 1981 return (icalproperty*)impl; 1982 } 1983 1984 /* RDATE */ 1985 icalproperty* icalproperty_new_rdate(struct icaldatetimeperiodtype v) { 1986 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_RDATE_PROPERTY); 1987 icalproperty_set_rdate((icalproperty*)impl,v); 1988 return (icalproperty*)impl; 1989 } 1990 1991 void icalproperty_set_rdate(icalproperty* prop, struct icaldatetimeperiodtype v){ 1992 1993 icalerror_check_arg_rv( (prop!=0),"prop"); 1994 icalproperty_set_value(prop,icalvalue_new_datetimeperiod(v)); 1995 } 1996 struct icaldatetimeperiodtype icalproperty_get_rdate(const icalproperty* prop){ 1997 icalerror_check_arg( (prop!=0),"prop"); 1998 return icalvalue_get_datetimeperiod(icalproperty_get_value(prop)); 1999 } 2000 icalproperty* icalproperty_vanew_recuraccepted(const char* v, ...){ 2001 va_list args; 2002 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_RECURACCEPTED_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2003 2004 icalproperty_set_recuraccepted((icalproperty*)impl,v); 2005 va_start(args,v); 2006 icalproperty_add_parameters(impl, args); 2007 va_end(args); 2008 return (icalproperty*)impl; 2009 } 2010 2011 /* RECUR-ACCEPTED */ 2012 icalproperty* icalproperty_new_recuraccepted(const char* v) { 2013 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_RECURACCEPTED_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2014 2015 icalproperty_set_recuraccepted((icalproperty*)impl,v); 2016 return (icalproperty*)impl; 2017 } 2018 2019 void icalproperty_set_recuraccepted(icalproperty* prop, const char* v){ 2020 icalerror_check_arg_rv( (v!=0),"v"); 2021 2022 icalerror_check_arg_rv( (prop!=0),"prop"); 2023 icalproperty_set_value(prop,icalvalue_new_text(v)); 2024 } 2025 const char* icalproperty_get_recuraccepted(const icalproperty* prop){ 2026 icalerror_check_arg( (prop!=0),"prop"); 2027 return icalvalue_get_text(icalproperty_get_value(prop)); 2028 } 2029 icalproperty* icalproperty_vanew_recurexpand(const char* v, ...){ 2030 va_list args; 2031 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_RECUREXPAND_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2032 2033 icalproperty_set_recurexpand((icalproperty*)impl,v); 2034 va_start(args,v); 2035 icalproperty_add_parameters(impl, args); 2036 va_end(args); 2037 return (icalproperty*)impl; 2038 } 2039 2040 /* RECUR-EXPAND */ 2041 icalproperty* icalproperty_new_recurexpand(const char* v) { 2042 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_RECUREXPAND_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2043 2044 icalproperty_set_recurexpand((icalproperty*)impl,v); 2045 return (icalproperty*)impl; 2046 } 2047 2048 void icalproperty_set_recurexpand(icalproperty* prop, const char* v){ 2049 icalerror_check_arg_rv( (v!=0),"v"); 2050 2051 icalerror_check_arg_rv( (prop!=0),"prop"); 2052 icalproperty_set_value(prop,icalvalue_new_text(v)); 2053 } 2054 const char* icalproperty_get_recurexpand(const icalproperty* prop){ 2055 icalerror_check_arg( (prop!=0),"prop"); 2056 return icalvalue_get_text(icalproperty_get_value(prop)); 2057 } 2058 icalproperty* icalproperty_vanew_recurlimit(const char* v, ...){ 2059 va_list args; 2060 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_RECURLIMIT_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2061 2062 icalproperty_set_recurlimit((icalproperty*)impl,v); 2063 va_start(args,v); 2064 icalproperty_add_parameters(impl, args); 2065 va_end(args); 2066 return (icalproperty*)impl; 2067 } 2068 2069 /* RECUR-LIMIT */ 2070 icalproperty* icalproperty_new_recurlimit(const char* v) { 2071 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_RECURLIMIT_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2072 2073 icalproperty_set_recurlimit((icalproperty*)impl,v); 2074 return (icalproperty*)impl; 2075 } 2076 2077 void icalproperty_set_recurlimit(icalproperty* prop, const char* v){ 2078 icalerror_check_arg_rv( (v!=0),"v"); 2079 2080 icalerror_check_arg_rv( (prop!=0),"prop"); 2081 icalproperty_set_value(prop,icalvalue_new_text(v)); 2082 } 2083 const char* icalproperty_get_recurlimit(const icalproperty* prop){ 2084 icalerror_check_arg( (prop!=0),"prop"); 2085 return icalvalue_get_text(icalproperty_get_value(prop)); 2086 } 2087 icalproperty* icalproperty_vanew_recurrenceid(struct icaltimetype v, ...){ 2088 va_list args; 2089 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_RECURRENCEID_PROPERTY); 2090 icalproperty_set_recurrenceid((icalproperty*)impl,v); 2091 va_start(args,v); 2092 icalproperty_add_parameters(impl, args); 2093 va_end(args); 2094 return (icalproperty*)impl; 2095 } 2096 2097 /* RECURRENCE-ID */ 2098 icalproperty* icalproperty_new_recurrenceid(struct icaltimetype v) { 2099 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_RECURRENCEID_PROPERTY); 2100 icalproperty_set_recurrenceid((icalproperty*)impl,v); 2101 return (icalproperty*)impl; 2102 } 2103 2104 void icalproperty_set_recurrenceid(icalproperty* prop, struct icaltimetype v){ 2105 icalvalue *value; 2106 2107 icalerror_check_arg_rv( (prop!=0),"prop"); 2108 if (v.is_date) 2109 value = icalvalue_new_date(v); 2110 else 2111 value = icalvalue_new_datetime(v); 2112 icalproperty_set_value(prop,value); 2113 } 2114 struct icaltimetype icalproperty_get_recurrenceid(const icalproperty* prop){ 2115 icalerror_check_arg( (prop!=0),"prop"); 2116 return icalvalue_get_datetime(icalproperty_get_value(prop)); 2117 } 2118 icalproperty* icalproperty_vanew_relatedto(const char* v, ...){ 2119 va_list args; 2120 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_RELATEDTO_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2121 2122 icalproperty_set_relatedto((icalproperty*)impl,v); 2123 va_start(args,v); 2124 icalproperty_add_parameters(impl, args); 2125 va_end(args); 2126 return (icalproperty*)impl; 2127 } 2128 2129 /* RELATED-TO */ 2130 icalproperty* icalproperty_new_relatedto(const char* v) { 2131 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_RELATEDTO_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2132 2133 icalproperty_set_relatedto((icalproperty*)impl,v); 2134 return (icalproperty*)impl; 2135 } 2136 2137 void icalproperty_set_relatedto(icalproperty* prop, const char* v){ 2138 icalerror_check_arg_rv( (v!=0),"v"); 2139 2140 icalerror_check_arg_rv( (prop!=0),"prop"); 2141 icalproperty_set_value(prop,icalvalue_new_text(v)); 2142 } 2143 const char* icalproperty_get_relatedto(const icalproperty* prop){ 2144 icalerror_check_arg( (prop!=0),"prop"); 2145 return icalvalue_get_text(icalproperty_get_value(prop)); 2146 } 2147 icalproperty* icalproperty_vanew_relcalid(const char* v, ...){ 2148 va_list args; 2149 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_RELCALID_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2150 2151 icalproperty_set_relcalid((icalproperty*)impl,v); 2152 va_start(args,v); 2153 icalproperty_add_parameters(impl, args); 2154 va_end(args); 2155 return (icalproperty*)impl; 2156 } 2157 2158 /* RELCALID */ 2159 icalproperty* icalproperty_new_relcalid(const char* v) { 2160 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_RELCALID_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2161 2162 icalproperty_set_relcalid((icalproperty*)impl,v); 2163 return (icalproperty*)impl; 2164 } 2165 2166 void icalproperty_set_relcalid(icalproperty* prop, const char* v){ 2167 icalerror_check_arg_rv( (v!=0),"v"); 2168 2169 icalerror_check_arg_rv( (prop!=0),"prop"); 2170 icalproperty_set_value(prop,icalvalue_new_text(v)); 2171 } 2172 const char* icalproperty_get_relcalid(const icalproperty* prop){ 2173 icalerror_check_arg( (prop!=0),"prop"); 2174 return icalvalue_get_text(icalproperty_get_value(prop)); 2175 } 2176 icalproperty* icalproperty_vanew_repeat(int v, ...){ 2177 va_list args; 2178 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_REPEAT_PROPERTY); 2179 icalproperty_set_repeat((icalproperty*)impl,v); 2180 va_start(args,v); 2181 icalproperty_add_parameters(impl, args); 2182 va_end(args); 2183 return (icalproperty*)impl; 2184 } 2185 2186 /* REPEAT */ 2187 icalproperty* icalproperty_new_repeat(int v) { 2188 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_REPEAT_PROPERTY); 2189 icalproperty_set_repeat((icalproperty*)impl,v); 2190 return (icalproperty*)impl; 2191 } 2192 2193 void icalproperty_set_repeat(icalproperty* prop, int v){ 2194 2195 icalerror_check_arg_rv( (prop!=0),"prop"); 2196 icalproperty_set_value(prop,icalvalue_new_integer(v)); 2197 } 2198 int icalproperty_get_repeat(const icalproperty* prop){ 2199 icalerror_check_arg( (prop!=0),"prop"); 2200 return icalvalue_get_integer(icalproperty_get_value(prop)); 2201 } 2202 icalproperty* icalproperty_vanew_requeststatus(struct icalreqstattype v, ...){ 2203 va_list args; 2204 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_REQUESTSTATUS_PROPERTY); 2205 icalproperty_set_requeststatus((icalproperty*)impl,v); 2206 va_start(args,v); 2207 icalproperty_add_parameters(impl, args); 2208 va_end(args); 2209 return (icalproperty*)impl; 2210 } 2211 2212 /* REQUEST-STATUS */ 2213 icalproperty* icalproperty_new_requeststatus(struct icalreqstattype v) { 2214 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_REQUESTSTATUS_PROPERTY); 2215 icalproperty_set_requeststatus((icalproperty*)impl,v); 2216 return (icalproperty*)impl; 2217 } 2218 2219 void icalproperty_set_requeststatus(icalproperty* prop, struct icalreqstattype v){ 2220 2221 icalerror_check_arg_rv( (prop!=0),"prop"); 2222 icalproperty_set_value(prop,icalvalue_new_requeststatus(v)); 2223 } 2224 struct icalreqstattype icalproperty_get_requeststatus(const icalproperty* prop){ 2225 icalerror_check_arg( (prop!=0),"prop"); 2226 return icalvalue_get_requeststatus(icalproperty_get_value(prop)); 2227 } 2228 icalproperty* icalproperty_vanew_resources(const char* v, ...){ 2229 va_list args; 2230 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_RESOURCES_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2231 2232 icalproperty_set_resources((icalproperty*)impl,v); 2233 va_start(args,v); 2234 icalproperty_add_parameters(impl, args); 2235 va_end(args); 2236 return (icalproperty*)impl; 2237 } 2238 2239 /* RESOURCES */ 2240 icalproperty* icalproperty_new_resources(const char* v) { 2241 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_RESOURCES_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2242 2243 icalproperty_set_resources((icalproperty*)impl,v); 2244 return (icalproperty*)impl; 2245 } 2246 2247 void icalproperty_set_resources(icalproperty* prop, const char* v){ 2248 icalerror_check_arg_rv( (v!=0),"v"); 2249 2250 icalerror_check_arg_rv( (prop!=0),"prop"); 2251 icalproperty_set_value(prop,icalvalue_new_text(v)); 2252 } 2253 const char* icalproperty_get_resources(const icalproperty* prop){ 2254 icalerror_check_arg( (prop!=0),"prop"); 2255 return icalvalue_get_text(icalproperty_get_value(prop)); 2256 } 2257 icalproperty* icalproperty_vanew_restriction(const char* v, ...){ 2258 va_list args; 2259 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_RESTRICTION_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2260 2261 icalproperty_set_restriction((icalproperty*)impl,v); 2262 va_start(args,v); 2263 icalproperty_add_parameters(impl, args); 2264 va_end(args); 2265 return (icalproperty*)impl; 2266 } 2267 2268 /* RESTRICTION */ 2269 icalproperty* icalproperty_new_restriction(const char* v) { 2270 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_RESTRICTION_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2271 2272 icalproperty_set_restriction((icalproperty*)impl,v); 2273 return (icalproperty*)impl; 2274 } 2275 2276 void icalproperty_set_restriction(icalproperty* prop, const char* v){ 2277 icalerror_check_arg_rv( (v!=0),"v"); 2278 2279 icalerror_check_arg_rv( (prop!=0),"prop"); 2280 icalproperty_set_value(prop,icalvalue_new_query(v)); 2281 } 2282 const char* icalproperty_get_restriction(const icalproperty* prop){ 2283 icalerror_check_arg( (prop!=0),"prop"); 2284 return icalvalue_get_query(icalproperty_get_value(prop)); 2285 } 2286 icalproperty* icalproperty_vanew_rrule(struct icalrecurrencetype v, ...){ 2287 va_list args; 2288 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_RRULE_PROPERTY); 2289 icalproperty_set_rrule((icalproperty*)impl,v); 2290 va_start(args,v); 2291 icalproperty_add_parameters(impl, args); 2292 va_end(args); 2293 return (icalproperty*)impl; 2294 } 2295 2296 /* RRULE */ 2297 icalproperty* icalproperty_new_rrule(struct icalrecurrencetype v) { 2298 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_RRULE_PROPERTY); 2299 icalproperty_set_rrule((icalproperty*)impl,v); 2300 return (icalproperty*)impl; 2301 } 2302 2303 void icalproperty_set_rrule(icalproperty* prop, struct icalrecurrencetype v){ 2304 2305 icalerror_check_arg_rv( (prop!=0),"prop"); 2306 icalproperty_set_value(prop,icalvalue_new_recur(v)); 2307 } 2308 struct icalrecurrencetype icalproperty_get_rrule(const icalproperty* prop){ 2309 icalerror_check_arg( (prop!=0),"prop"); 2310 return icalvalue_get_recur(icalproperty_get_value(prop)); 2311 } 2312 icalproperty* icalproperty_vanew_scope(const char* v, ...){ 2313 va_list args; 2314 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_SCOPE_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2315 2316 icalproperty_set_scope((icalproperty*)impl,v); 2317 va_start(args,v); 2318 icalproperty_add_parameters(impl, args); 2319 va_end(args); 2320 return (icalproperty*)impl; 2321 } 2322 2323 /* SCOPE */ 2324 icalproperty* icalproperty_new_scope(const char* v) { 2325 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_SCOPE_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2326 2327 icalproperty_set_scope((icalproperty*)impl,v); 2328 return (icalproperty*)impl; 2329 } 2330 2331 void icalproperty_set_scope(icalproperty* prop, const char* v){ 2332 icalerror_check_arg_rv( (v!=0),"v"); 2333 2334 icalerror_check_arg_rv( (prop!=0),"prop"); 2335 icalproperty_set_value(prop,icalvalue_new_text(v)); 2336 } 2337 const char* icalproperty_get_scope(const icalproperty* prop){ 2338 icalerror_check_arg( (prop!=0),"prop"); 2339 return icalvalue_get_text(icalproperty_get_value(prop)); 2340 } 2341 icalproperty* icalproperty_vanew_sequence(int v, ...){ 2342 va_list args; 2343 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_SEQUENCE_PROPERTY); 2344 icalproperty_set_sequence((icalproperty*)impl,v); 2345 va_start(args,v); 2346 icalproperty_add_parameters(impl, args); 2347 va_end(args); 2348 return (icalproperty*)impl; 2349 } 2350 2351 /* SEQUENCE */ 2352 icalproperty* icalproperty_new_sequence(int v) { 2353 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_SEQUENCE_PROPERTY); 2354 icalproperty_set_sequence((icalproperty*)impl,v); 2355 return (icalproperty*)impl; 2356 } 2357 2358 void icalproperty_set_sequence(icalproperty* prop, int v){ 2359 2360 icalerror_check_arg_rv( (prop!=0),"prop"); 2361 icalproperty_set_value(prop,icalvalue_new_integer(v)); 2362 } 2363 int icalproperty_get_sequence(const icalproperty* prop){ 2364 icalerror_check_arg( (prop!=0),"prop"); 2365 return icalvalue_get_integer(icalproperty_get_value(prop)); 2366 } 2367 icalproperty* icalproperty_vanew_status(enum icalproperty_status v, ...){ 2368 va_list args; 2369 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_STATUS_PROPERTY); 2370 icalproperty_set_status((icalproperty*)impl,v); 2371 va_start(args,v); 2372 icalproperty_add_parameters(impl, args); 2373 va_end(args); 2374 return (icalproperty*)impl; 2375 } 2376 2377 /* STATUS */ 2378 icalproperty* icalproperty_new_status(enum icalproperty_status v) { 2379 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_STATUS_PROPERTY); 2380 icalproperty_set_status((icalproperty*)impl,v); 2381 return (icalproperty*)impl; 2382 } 2383 2384 void icalproperty_set_status(icalproperty* prop, enum icalproperty_status v){ 2385 2386 icalerror_check_arg_rv( (prop!=0),"prop"); 2387 icalproperty_set_value(prop,icalvalue_new_status(v)); 2388 } 2389 enum icalproperty_status icalproperty_get_status(const icalproperty* prop){ 2390 icalerror_check_arg( (prop!=0),"prop"); 2391 return icalvalue_get_status(icalproperty_get_value(prop)); 2392 } 2393 icalproperty* icalproperty_vanew_storesexpanded(const char* v, ...){ 2394 va_list args; 2395 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_STORESEXPANDED_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2396 2397 icalproperty_set_storesexpanded((icalproperty*)impl,v); 2398 va_start(args,v); 2399 icalproperty_add_parameters(impl, args); 2400 va_end(args); 2401 return (icalproperty*)impl; 2402 } 2403 2404 /* STORES-EXPANDED */ 2405 icalproperty* icalproperty_new_storesexpanded(const char* v) { 2406 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_STORESEXPANDED_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2407 2408 icalproperty_set_storesexpanded((icalproperty*)impl,v); 2409 return (icalproperty*)impl; 2410 } 2411 2412 void icalproperty_set_storesexpanded(icalproperty* prop, const char* v){ 2413 icalerror_check_arg_rv( (v!=0),"v"); 2414 2415 icalerror_check_arg_rv( (prop!=0),"prop"); 2416 icalproperty_set_value(prop,icalvalue_new_text(v)); 2417 } 2418 const char* icalproperty_get_storesexpanded(const icalproperty* prop){ 2419 icalerror_check_arg( (prop!=0),"prop"); 2420 return icalvalue_get_text(icalproperty_get_value(prop)); 2421 } 2422 icalproperty* icalproperty_vanew_summary(const char* v, ...){ 2423 va_list args; 2424 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_SUMMARY_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2425 2426 icalproperty_set_summary((icalproperty*)impl,v); 2427 va_start(args,v); 2428 icalproperty_add_parameters(impl, args); 2429 va_end(args); 2430 return (icalproperty*)impl; 2431 } 2432 2433 /* SUMMARY */ 2434 icalproperty* icalproperty_new_summary(const char* v) { 2435 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_SUMMARY_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2436 2437 icalproperty_set_summary((icalproperty*)impl,v); 2438 return (icalproperty*)impl; 2439 } 2440 2441 void icalproperty_set_summary(icalproperty* prop, const char* v){ 2442 icalerror_check_arg_rv( (v!=0),"v"); 2443 2444 icalerror_check_arg_rv( (prop!=0),"prop"); 2445 icalproperty_set_value(prop,icalvalue_new_text(v)); 2446 } 2447 const char* icalproperty_get_summary(const icalproperty* prop){ 2448 icalerror_check_arg( (prop!=0),"prop"); 2449 return icalvalue_get_text(icalproperty_get_value(prop)); 2450 } 2451 icalproperty* icalproperty_vanew_target(const char* v, ...){ 2452 va_list args; 2453 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_TARGET_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2454 2455 icalproperty_set_target((icalproperty*)impl,v); 2456 va_start(args,v); 2457 icalproperty_add_parameters(impl, args); 2458 va_end(args); 2459 return (icalproperty*)impl; 2460 } 2461 2462 /* TARGET */ 2463 icalproperty* icalproperty_new_target(const char* v) { 2464 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_TARGET_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2465 2466 icalproperty_set_target((icalproperty*)impl,v); 2467 return (icalproperty*)impl; 2468 } 2469 2470 void icalproperty_set_target(icalproperty* prop, const char* v){ 2471 icalerror_check_arg_rv( (v!=0),"v"); 2472 2473 icalerror_check_arg_rv( (prop!=0),"prop"); 2474 icalproperty_set_value(prop,icalvalue_new_caladdress(v)); 2475 } 2476 const char* icalproperty_get_target(const icalproperty* prop){ 2477 icalerror_check_arg( (prop!=0),"prop"); 2478 return icalvalue_get_caladdress(icalproperty_get_value(prop)); 2479 } 2480 icalproperty* icalproperty_vanew_transp(enum icalproperty_transp v, ...){ 2481 va_list args; 2482 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_TRANSP_PROPERTY); 2483 icalproperty_set_transp((icalproperty*)impl,v); 2484 va_start(args,v); 2485 icalproperty_add_parameters(impl, args); 2486 va_end(args); 2487 return (icalproperty*)impl; 2488 } 2489 2490 /* TRANSP */ 2491 icalproperty* icalproperty_new_transp(enum icalproperty_transp v) { 2492 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_TRANSP_PROPERTY); 2493 icalproperty_set_transp((icalproperty*)impl,v); 2494 return (icalproperty*)impl; 2495 } 2496 2497 void icalproperty_set_transp(icalproperty* prop, enum icalproperty_transp v){ 2498 2499 icalerror_check_arg_rv( (prop!=0),"prop"); 2500 icalproperty_set_value(prop,icalvalue_new_transp(v)); 2501 } 2502 enum icalproperty_transp icalproperty_get_transp(const icalproperty* prop){ 2503 icalerror_check_arg( (prop!=0),"prop"); 2504 return icalvalue_get_transp(icalproperty_get_value(prop)); 2505 } 2506 icalproperty* icalproperty_vanew_trigger(struct icaltriggertype v, ...){ 2507 va_list args; 2508 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_TRIGGER_PROPERTY); 2509 icalproperty_set_trigger((icalproperty*)impl,v); 2510 va_start(args,v); 2511 icalproperty_add_parameters(impl, args); 2512 va_end(args); 2513 return (icalproperty*)impl; 2514 } 2515 2516 /* TRIGGER */ 2517 icalproperty* icalproperty_new_trigger(struct icaltriggertype v) { 2518 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_TRIGGER_PROPERTY); 2519 icalproperty_set_trigger((icalproperty*)impl,v); 2520 return (icalproperty*)impl; 2521 } 2522 2523 void icalproperty_set_trigger(icalproperty* prop, struct icaltriggertype v){ 2524 2525 icalerror_check_arg_rv( (prop!=0),"prop"); 2526 icalproperty_set_value(prop,icalvalue_new_trigger(v)); 2527 } 2528 struct icaltriggertype icalproperty_get_trigger(const icalproperty* prop){ 2529 icalerror_check_arg( (prop!=0),"prop"); 2530 return icalvalue_get_trigger(icalproperty_get_value(prop)); 2531 } 2532 icalproperty* icalproperty_vanew_tzid(const char* v, ...){ 2533 va_list args; 2534 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_TZID_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2535 2536 icalproperty_set_tzid((icalproperty*)impl,v); 2537 va_start(args,v); 2538 icalproperty_add_parameters(impl, args); 2539 va_end(args); 2540 return (icalproperty*)impl; 2541 } 2542 2543 /* TZID */ 2544 icalproperty* icalproperty_new_tzid(const char* v) { 2545 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_TZID_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2546 2547 icalproperty_set_tzid((icalproperty*)impl,v); 2548 return (icalproperty*)impl; 2549 } 2550 2551 void icalproperty_set_tzid(icalproperty* prop, const char* v){ 2552 icalerror_check_arg_rv( (v!=0),"v"); 2553 2554 icalerror_check_arg_rv( (prop!=0),"prop"); 2555 icalproperty_set_value(prop,icalvalue_new_text(v)); 2556 } 2557 const char* icalproperty_get_tzid(const icalproperty* prop){ 2558 icalerror_check_arg( (prop!=0),"prop"); 2559 return icalvalue_get_text(icalproperty_get_value(prop)); 2560 } 2561 icalproperty* icalproperty_vanew_tzname(const char* v, ...){ 2562 va_list args; 2563 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_TZNAME_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2564 2565 icalproperty_set_tzname((icalproperty*)impl,v); 2566 va_start(args,v); 2567 icalproperty_add_parameters(impl, args); 2568 va_end(args); 2569 return (icalproperty*)impl; 2570 } 2571 2572 /* TZNAME */ 2573 icalproperty* icalproperty_new_tzname(const char* v) { 2574 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_TZNAME_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2575 2576 icalproperty_set_tzname((icalproperty*)impl,v); 2577 return (icalproperty*)impl; 2578 } 2579 2580 void icalproperty_set_tzname(icalproperty* prop, const char* v){ 2581 icalerror_check_arg_rv( (v!=0),"v"); 2582 2583 icalerror_check_arg_rv( (prop!=0),"prop"); 2584 icalproperty_set_value(prop,icalvalue_new_text(v)); 2585 } 2586 const char* icalproperty_get_tzname(const icalproperty* prop){ 2587 icalerror_check_arg( (prop!=0),"prop"); 2588 return icalvalue_get_text(icalproperty_get_value(prop)); 2589 } 2590 icalproperty* icalproperty_vanew_tzoffsetfrom(int v, ...){ 2591 va_list args; 2592 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_TZOFFSETFROM_PROPERTY); 2593 icalproperty_set_tzoffsetfrom((icalproperty*)impl,v); 2594 va_start(args,v); 2595 icalproperty_add_parameters(impl, args); 2596 va_end(args); 2597 return (icalproperty*)impl; 2598 } 2599 2600 /* TZOFFSETFROM */ 2601 icalproperty* icalproperty_new_tzoffsetfrom(int v) { 2602 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_TZOFFSETFROM_PROPERTY); 2603 icalproperty_set_tzoffsetfrom((icalproperty*)impl,v); 2604 return (icalproperty*)impl; 2605 } 2606 2607 void icalproperty_set_tzoffsetfrom(icalproperty* prop, int v){ 2608 2609 icalerror_check_arg_rv( (prop!=0),"prop"); 2610 icalproperty_set_value(prop,icalvalue_new_utcoffset(v)); 2611 } 2612 int icalproperty_get_tzoffsetfrom(const icalproperty* prop){ 2613 icalerror_check_arg( (prop!=0),"prop"); 2614 return icalvalue_get_utcoffset(icalproperty_get_value(prop)); 2615 } 2616 icalproperty* icalproperty_vanew_tzoffsetto(int v, ...){ 2617 va_list args; 2618 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_TZOFFSETTO_PROPERTY); 2619 icalproperty_set_tzoffsetto((icalproperty*)impl,v); 2620 va_start(args,v); 2621 icalproperty_add_parameters(impl, args); 2622 va_end(args); 2623 return (icalproperty*)impl; 2624 } 2625 2626 /* TZOFFSETTO */ 2627 icalproperty* icalproperty_new_tzoffsetto(int v) { 2628 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_TZOFFSETTO_PROPERTY); 2629 icalproperty_set_tzoffsetto((icalproperty*)impl,v); 2630 return (icalproperty*)impl; 2631 } 2632 2633 void icalproperty_set_tzoffsetto(icalproperty* prop, int v){ 2634 2635 icalerror_check_arg_rv( (prop!=0),"prop"); 2636 icalproperty_set_value(prop,icalvalue_new_utcoffset(v)); 2637 } 2638 int icalproperty_get_tzoffsetto(const icalproperty* prop){ 2639 icalerror_check_arg( (prop!=0),"prop"); 2640 return icalvalue_get_utcoffset(icalproperty_get_value(prop)); 2641 } 2642 icalproperty* icalproperty_vanew_tzurl(const char* v, ...){ 2643 va_list args; 2644 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_TZURL_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2645 2646 icalproperty_set_tzurl((icalproperty*)impl,v); 2647 va_start(args,v); 2648 icalproperty_add_parameters(impl, args); 2649 va_end(args); 2650 return (icalproperty*)impl; 2651 } 2652 2653 /* TZURL */ 2654 icalproperty* icalproperty_new_tzurl(const char* v) { 2655 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_TZURL_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2656 2657 icalproperty_set_tzurl((icalproperty*)impl,v); 2658 return (icalproperty*)impl; 2659 } 2660 2661 void icalproperty_set_tzurl(icalproperty* prop, const char* v){ 2662 icalerror_check_arg_rv( (v!=0),"v"); 2663 2664 icalerror_check_arg_rv( (prop!=0),"prop"); 2665 icalproperty_set_value(prop,icalvalue_new_uri(v)); 2666 } 2667 const char* icalproperty_get_tzurl(const icalproperty* prop){ 2668 icalerror_check_arg( (prop!=0),"prop"); 2669 return icalvalue_get_uri(icalproperty_get_value(prop)); 2670 } 2671 icalproperty* icalproperty_vanew_uid(const char* v, ...){ 2672 va_list args; 2673 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_UID_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2674 2675 icalproperty_set_uid((icalproperty*)impl,v); 2676 va_start(args,v); 2677 icalproperty_add_parameters(impl, args); 2678 va_end(args); 2679 return (icalproperty*)impl; 2680 } 2681 2682 /* UID */ 2683 icalproperty* icalproperty_new_uid(const char* v) { 2684 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_UID_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2685 2686 icalproperty_set_uid((icalproperty*)impl,v); 2687 return (icalproperty*)impl; 2688 } 2689 2690 void icalproperty_set_uid(icalproperty* prop, const char* v){ 2691 icalerror_check_arg_rv( (v!=0),"v"); 2692 2693 icalerror_check_arg_rv( (prop!=0),"prop"); 2694 icalproperty_set_value(prop,icalvalue_new_text(v)); 2695 } 2696 const char* icalproperty_get_uid(const icalproperty* prop){ 2697 icalerror_check_arg( (prop!=0),"prop"); 2698 return icalvalue_get_text(icalproperty_get_value(prop)); 2699 } 2700 icalproperty* icalproperty_vanew_url(const char* v, ...){ 2701 va_list args; 2702 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_URL_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2703 2704 icalproperty_set_url((icalproperty*)impl,v); 2705 va_start(args,v); 2706 icalproperty_add_parameters(impl, args); 2707 va_end(args); 2708 return (icalproperty*)impl; 2709 } 2710 2711 /* URL */ 2712 icalproperty* icalproperty_new_url(const char* v) { 2713 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_URL_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2714 2715 icalproperty_set_url((icalproperty*)impl,v); 2716 return (icalproperty*)impl; 2717 } 2718 2719 void icalproperty_set_url(icalproperty* prop, const char* v){ 2720 icalerror_check_arg_rv( (v!=0),"v"); 2721 2722 icalerror_check_arg_rv( (prop!=0),"prop"); 2723 icalproperty_set_value(prop,icalvalue_new_uri(v)); 2724 } 2725 const char* icalproperty_get_url(const icalproperty* prop){ 2726 icalerror_check_arg( (prop!=0),"prop"); 2727 return icalvalue_get_uri(icalproperty_get_value(prop)); 2728 } 2729 icalproperty* icalproperty_vanew_version(const char* v, ...){ 2730 va_list args; 2731 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_VERSION_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2732 2733 icalproperty_set_version((icalproperty*)impl,v); 2734 va_start(args,v); 2735 icalproperty_add_parameters(impl, args); 2736 va_end(args); 2737 return (icalproperty*)impl; 2738 } 2739 2740 /* VERSION */ 2741 icalproperty* icalproperty_new_version(const char* v) { 2742 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_VERSION_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2743 2744 icalproperty_set_version((icalproperty*)impl,v); 2745 return (icalproperty*)impl; 2746 } 2747 2748 void icalproperty_set_version(icalproperty* prop, const char* v){ 2749 icalerror_check_arg_rv( (v!=0),"v"); 2750 2751 icalerror_check_arg_rv( (prop!=0),"prop"); 2752 icalproperty_set_value(prop,icalvalue_new_text(v)); 2753 } 2754 const char* icalproperty_get_version(const icalproperty* prop){ 2755 icalerror_check_arg( (prop!=0),"prop"); 2756 return icalvalue_get_text(icalproperty_get_value(prop)); 2757 } 2758 icalproperty* icalproperty_vanew_x(const char* v, ...){ 2759 va_list args; 2760 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_X_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2761 2762 icalproperty_set_x((icalproperty*)impl,v); 2763 va_start(args,v); 2764 icalproperty_add_parameters(impl, args); 2765 va_end(args); 2766 return (icalproperty*)impl; 2767 } 2768 2769 /* X */ 2770 icalproperty* icalproperty_new_x(const char* v) { 2771 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_X_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2772 2773 icalproperty_set_x((icalproperty*)impl,v); 2774 return (icalproperty*)impl; 2775 } 2776 2777 void icalproperty_set_x(icalproperty* prop, const char* v){ 2778 icalerror_check_arg_rv( (v!=0),"v"); 2779 2780 icalerror_check_arg_rv( (prop!=0),"prop"); 2781 icalproperty_set_value(prop,icalvalue_new_x(v)); 2782 } 2783 const char* icalproperty_get_x(const icalproperty* prop){ 2784 icalerror_check_arg( (prop!=0),"prop"); 2785 return icalvalue_get_x(icalproperty_get_value(prop)); 2786 } 2787 icalproperty* icalproperty_vanew_xlicclass(enum icalproperty_xlicclass v, ...){ 2788 va_list args; 2789 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_XLICCLASS_PROPERTY); 2790 icalproperty_set_xlicclass((icalproperty*)impl,v); 2791 va_start(args,v); 2792 icalproperty_add_parameters(impl, args); 2793 va_end(args); 2794 return (icalproperty*)impl; 2795 } 2796 2797 /* X-LIC-CLASS */ 2798 icalproperty* icalproperty_new_xlicclass(enum icalproperty_xlicclass v) { 2799 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_XLICCLASS_PROPERTY); 2800 icalproperty_set_xlicclass((icalproperty*)impl,v); 2801 return (icalproperty*)impl; 2802 } 2803 2804 void icalproperty_set_xlicclass(icalproperty* prop, enum icalproperty_xlicclass v){ 2805 2806 icalerror_check_arg_rv( (prop!=0),"prop"); 2807 icalproperty_set_value(prop,icalvalue_new_xlicclass(v)); 2808 } 2809 enum icalproperty_xlicclass icalproperty_get_xlicclass(const icalproperty* prop){ 2810 icalerror_check_arg( (prop!=0),"prop"); 2811 return icalvalue_get_xlicclass(icalproperty_get_value(prop)); 2812 } 2813 icalproperty* icalproperty_vanew_xlicclustercount(const char* v, ...){ 2814 va_list args; 2815 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_XLICCLUSTERCOUNT_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2816 2817 icalproperty_set_xlicclustercount((icalproperty*)impl,v); 2818 va_start(args,v); 2819 icalproperty_add_parameters(impl, args); 2820 va_end(args); 2821 return (icalproperty*)impl; 2822 } 2823 2824 /* X-LIC-CLUSTERCOUNT */ 2825 icalproperty* icalproperty_new_xlicclustercount(const char* v) { 2826 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_XLICCLUSTERCOUNT_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2827 2828 icalproperty_set_xlicclustercount((icalproperty*)impl,v); 2829 return (icalproperty*)impl; 2830 } 2831 2832 void icalproperty_set_xlicclustercount(icalproperty* prop, const char* v){ 2833 icalerror_check_arg_rv( (v!=0),"v"); 2834 2835 icalerror_check_arg_rv( (prop!=0),"prop"); 2836 icalproperty_set_value(prop,icalvalue_new_string(v)); 2837 } 2838 const char* icalproperty_get_xlicclustercount(const icalproperty* prop){ 2839 icalerror_check_arg( (prop!=0),"prop"); 2840 return icalvalue_get_string(icalproperty_get_value(prop)); 2841 } 2842 icalproperty* icalproperty_vanew_xlicerror(const char* v, ...){ 2843 va_list args; 2844 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_XLICERROR_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2845 2846 icalproperty_set_xlicerror((icalproperty*)impl,v); 2847 va_start(args,v); 2848 icalproperty_add_parameters(impl, args); 2849 va_end(args); 2850 return (icalproperty*)impl; 2851 } 2852 2853 /* X-LIC-ERROR */ 2854 icalproperty* icalproperty_new_xlicerror(const char* v) { 2855 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_XLICERROR_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2856 2857 icalproperty_set_xlicerror((icalproperty*)impl,v); 2858 return (icalproperty*)impl; 2859 } 2860 2861 void icalproperty_set_xlicerror(icalproperty* prop, const char* v){ 2862 icalerror_check_arg_rv( (v!=0),"v"); 2863 2864 icalerror_check_arg_rv( (prop!=0),"prop"); 2865 icalproperty_set_value(prop,icalvalue_new_text(v)); 2866 } 2867 const char* icalproperty_get_xlicerror(const icalproperty* prop){ 2868 icalerror_check_arg( (prop!=0),"prop"); 2869 return icalvalue_get_text(icalproperty_get_value(prop)); 2870 } 2871 icalproperty* icalproperty_vanew_xlicmimecharset(const char* v, ...){ 2872 va_list args; 2873 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_XLICMIMECHARSET_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2874 2875 icalproperty_set_xlicmimecharset((icalproperty*)impl,v); 2876 va_start(args,v); 2877 icalproperty_add_parameters(impl, args); 2878 va_end(args); 2879 return (icalproperty*)impl; 2880 } 2881 2882 /* X-LIC-MIMECHARSET */ 2883 icalproperty* icalproperty_new_xlicmimecharset(const char* v) { 2884 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_XLICMIMECHARSET_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2885 2886 icalproperty_set_xlicmimecharset((icalproperty*)impl,v); 2887 return (icalproperty*)impl; 2888 } 2889 2890 void icalproperty_set_xlicmimecharset(icalproperty* prop, const char* v){ 2891 icalerror_check_arg_rv( (v!=0),"v"); 2892 2893 icalerror_check_arg_rv( (prop!=0),"prop"); 2894 icalproperty_set_value(prop,icalvalue_new_string(v)); 2895 } 2896 const char* icalproperty_get_xlicmimecharset(const icalproperty* prop){ 2897 icalerror_check_arg( (prop!=0),"prop"); 2898 return icalvalue_get_string(icalproperty_get_value(prop)); 2899 } 2900 icalproperty* icalproperty_vanew_xlicmimecid(const char* v, ...){ 2901 va_list args; 2902 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_XLICMIMECID_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2903 2904 icalproperty_set_xlicmimecid((icalproperty*)impl,v); 2905 va_start(args,v); 2906 icalproperty_add_parameters(impl, args); 2907 va_end(args); 2908 return (icalproperty*)impl; 2909 } 2910 2911 /* X-LIC-MIMECID */ 2912 icalproperty* icalproperty_new_xlicmimecid(const char* v) { 2913 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_XLICMIMECID_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2914 2915 icalproperty_set_xlicmimecid((icalproperty*)impl,v); 2916 return (icalproperty*)impl; 2917 } 2918 2919 void icalproperty_set_xlicmimecid(icalproperty* prop, const char* v){ 2920 icalerror_check_arg_rv( (v!=0),"v"); 2921 2922 icalerror_check_arg_rv( (prop!=0),"prop"); 2923 icalproperty_set_value(prop,icalvalue_new_string(v)); 2924 } 2925 const char* icalproperty_get_xlicmimecid(const icalproperty* prop){ 2926 icalerror_check_arg( (prop!=0),"prop"); 2927 return icalvalue_get_string(icalproperty_get_value(prop)); 2928 } 2929 icalproperty* icalproperty_vanew_xlicmimecontenttype(const char* v, ...){ 2930 va_list args; 2931 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_XLICMIMECONTENTTYPE_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2932 2933 icalproperty_set_xlicmimecontenttype((icalproperty*)impl,v); 2934 va_start(args,v); 2935 icalproperty_add_parameters(impl, args); 2936 va_end(args); 2937 return (icalproperty*)impl; 2938 } 2939 2940 /* X-LIC-MIMECONTENTTYPE */ 2941 icalproperty* icalproperty_new_xlicmimecontenttype(const char* v) { 2942 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_XLICMIMECONTENTTYPE_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2943 2944 icalproperty_set_xlicmimecontenttype((icalproperty*)impl,v); 2945 return (icalproperty*)impl; 2946 } 2947 2948 void icalproperty_set_xlicmimecontenttype(icalproperty* prop, const char* v){ 2949 icalerror_check_arg_rv( (v!=0),"v"); 2950 2951 icalerror_check_arg_rv( (prop!=0),"prop"); 2952 icalproperty_set_value(prop,icalvalue_new_string(v)); 2953 } 2954 const char* icalproperty_get_xlicmimecontenttype(const icalproperty* prop){ 2955 icalerror_check_arg( (prop!=0),"prop"); 2956 return icalvalue_get_string(icalproperty_get_value(prop)); 2957 } 2958 icalproperty* icalproperty_vanew_xlicmimeencoding(const char* v, ...){ 2959 va_list args; 2960 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_XLICMIMEENCODING_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2961 2962 icalproperty_set_xlicmimeencoding((icalproperty*)impl,v); 2963 va_start(args,v); 2964 icalproperty_add_parameters(impl, args); 2965 va_end(args); 2966 return (icalproperty*)impl; 2967 } 2968 2969 /* X-LIC-MIMEENCODING */ 2970 icalproperty* icalproperty_new_xlicmimeencoding(const char* v) { 2971 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_XLICMIMEENCODING_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2972 2973 icalproperty_set_xlicmimeencoding((icalproperty*)impl,v); 2974 return (icalproperty*)impl; 2975 } 2976 2977 void icalproperty_set_xlicmimeencoding(icalproperty* prop, const char* v){ 2978 icalerror_check_arg_rv( (v!=0),"v"); 2979 2980 icalerror_check_arg_rv( (prop!=0),"prop"); 2981 icalproperty_set_value(prop,icalvalue_new_string(v)); 2982 } 2983 const char* icalproperty_get_xlicmimeencoding(const icalproperty* prop){ 2984 icalerror_check_arg( (prop!=0),"prop"); 2985 return icalvalue_get_string(icalproperty_get_value(prop)); 2986 } 2987 icalproperty* icalproperty_vanew_xlicmimefilename(const char* v, ...){ 2988 va_list args; 2989 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_XLICMIMEFILENAME_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 2990 2991 icalproperty_set_xlicmimefilename((icalproperty*)impl,v); 2992 va_start(args,v); 2993 icalproperty_add_parameters(impl, args); 2994 va_end(args); 2995 return (icalproperty*)impl; 2996 } 2997 2998 /* X-LIC-MIMEFILENAME */ 2999 icalproperty* icalproperty_new_xlicmimefilename(const char* v) { 3000 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_XLICMIMEFILENAME_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 3001 3002 icalproperty_set_xlicmimefilename((icalproperty*)impl,v); 3003 return (icalproperty*)impl; 3004 } 3005 3006 void icalproperty_set_xlicmimefilename(icalproperty* prop, const char* v){ 3007 icalerror_check_arg_rv( (v!=0),"v"); 3008 3009 icalerror_check_arg_rv( (prop!=0),"prop"); 3010 icalproperty_set_value(prop,icalvalue_new_string(v)); 3011 } 3012 const char* icalproperty_get_xlicmimefilename(const icalproperty* prop){ 3013 icalerror_check_arg( (prop!=0),"prop"); 3014 return icalvalue_get_string(icalproperty_get_value(prop)); 3015 } 3016 icalproperty* icalproperty_vanew_xlicmimeoptinfo(const char* v, ...){ 3017 va_list args; 3018 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_XLICMIMEOPTINFO_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 3019 3020 icalproperty_set_xlicmimeoptinfo((icalproperty*)impl,v); 3021 va_start(args,v); 3022 icalproperty_add_parameters(impl, args); 3023 va_end(args); 3024 return (icalproperty*)impl; 3025 } 3026 3027 /* X-LIC-MIMEOPTINFO */ 3028 icalproperty* icalproperty_new_xlicmimeoptinfo(const char* v) { 3029 struct icalproperty_impl *impl = icalproperty_new_impl(ICAL_XLICMIMEOPTINFO_PROPERTY); icalerror_check_arg_rz( (v!=0),"v"); 3030 3031 icalproperty_set_xlicmimeoptinfo((icalproperty*)impl,v); 3032 return (icalproperty*)impl; 3033 } 3034 3035 void icalproperty_set_xlicmimeoptinfo(icalproperty* prop, const char* v){ 3036 icalerror_check_arg_rv( (v!=0),"v"); 3037 3038 icalerror_check_arg_rv( (prop!=0),"prop"); 3039 icalproperty_set_value(prop,icalvalue_new_string(v)); 3040 } 3041 const char* icalproperty_get_xlicmimeoptinfo(const icalproperty* prop){ 3042 icalerror_check_arg( (prop!=0),"prop"); 3043 return icalvalue_get_string(icalproperty_get_value(prop)); 3044 } 3045 3046 int icalproperty_kind_is_valid(const icalproperty_kind kind) 3047 { 3048 int i = 0; 3049 do { 3050 if (property_map[i].kind == kind) 3051 return 1; 3052 } while (property_map[i++].kind != ICAL_NO_PROPERTY); 3053 3054 return 0; 3055 } 3056 3057 const char* icalproperty_kind_to_string(icalproperty_kind kind) 3058 { 3059 int i; 3060 3061 for (i=0; property_map[i].kind != ICAL_NO_PROPERTY; i++) { 3062 if (property_map[i].kind == kind) { 3063 return property_map[i].name; 3064 } 3065 } 3066 3067 return 0; 3068 3069 } 3070 3071 3072 icalproperty_kind icalproperty_string_to_kind(const char* string) 3073 { 3074 int i; 3075 3076 if (string ==0 ) { 3077 return ICAL_NO_PROPERTY; 3078 } 3079 3080 3081 for (i=0; property_map[i].kind != ICAL_NO_PROPERTY; i++) { 3082 if (strcasecmp(property_map[i].name, string) == 0) { 3083 return property_map[i].kind; 3084 } 3085 } 3086 3087 if(strncmp(string,"X-",2)==0){ 3088 return ICAL_X_PROPERTY; 3089 } 3090 3091 3092 return ICAL_NO_PROPERTY; 3093 } 3094 3095 3096 icalproperty_kind icalproperty_value_kind_to_kind(icalvalue_kind kind) 3097 { 3098 int i; 3099 3100 for (i=0; property_map[i].kind != ICAL_NO_PROPERTY; i++) { 3101 if ( property_map[i].value == kind ) { 3102 return property_map[i].kind; 3103 } 3104 } 3105 3106 return ICAL_NO_PROPERTY; 3107 } 3108 3109 3110 3111 icalvalue_kind icalproperty_kind_to_value_kind(icalproperty_kind kind) 3112 { 3113 int i; 3114 3115 for (i=0; property_map[i].kind != ICAL_NO_PROPERTY; i++) { 3116 if ( property_map[i].kind == kind ) { 3117 return property_map[i].value; 3118 } 3119 } 3120 3121 return ICAL_NO_VALUE; 3122 } 3123 3124 3125 const char* icalproperty_enum_to_string(int e) 3126 { 3127 icalerror_check_arg_rz(e >= ICALPROPERTY_FIRST_ENUM,"e"); 3128 icalerror_check_arg_rz(e <= ICALPROPERTY_LAST_ENUM,"e"); 3129 3130 return enum_map[e-ICALPROPERTY_FIRST_ENUM].str; 3131 } 3132 3133 3134 char *icalproperty_enum_to_string_r(int e) 3135 { 3136 return icalmemory_strdup(icalproperty_enum_to_string(e)); 3137 } 3138 3139 3140 int icalproperty_kind_and_string_to_enum(const int kind, const char* str) 3141 { 3142 icalproperty_kind pkind; 3143 int i; 3144 3145 icalerror_check_arg_rz(str!=0,"str") 3146 3147 if ((pkind = icalproperty_value_kind_to_kind(kind)) == ICAL_NO_PROPERTY) 3148 return 0; 3149 3150 while(*str == ' '){ 3151 str++; 3152 } 3153 3154 for (i=ICALPROPERTY_FIRST_ENUM; i != ICALPROPERTY_LAST_ENUM; i++) { 3155 if (enum_map[i-ICALPROPERTY_FIRST_ENUM].prop == pkind) 3156 break; 3157 } 3158 if (i == ICALPROPERTY_LAST_ENUM) 3159 return 0; 3160 3161 for (; i != ICALPROPERTY_LAST_ENUM; i++) { 3162 if ( strcasecmp(enum_map[i-ICALPROPERTY_FIRST_ENUM].str, str) == 0) { 3163 return enum_map[i-ICALPROPERTY_FIRST_ENUM].prop_enum; 3164 } 3165 } 3166 3167 return 0; 3168 } 3169 3170 /** @deprecated please use icalproperty_kind_and_string_to_enum instead */ 3171 int icalproperty_string_to_enum(const char* str) 3172 { 3173 int i; 3174 3175 icalerror_check_arg_rz(str!=0,"str") 3176 3177 while(*str == ' '){ 3178 str++; 3179 } 3180 3181 for (i=ICALPROPERTY_FIRST_ENUM; i != ICALPROPERTY_LAST_ENUM; i++) { 3182 if ( strcasecmp(enum_map[i-ICALPROPERTY_FIRST_ENUM].str, str) == 0) { 3183 return enum_map[i-ICALPROPERTY_FIRST_ENUM].prop_enum; 3184 } 3185 } 3186 3187 return 0; 3188 } 3189 3190 int icalproperty_enum_belongs_to_property(icalproperty_kind kind, int e) 3191 { 3192 int i; 3193 3194 3195 for (i=ICALPROPERTY_FIRST_ENUM; i != ICALPROPERTY_LAST_ENUM; i++) { 3196 if(enum_map[i-ICALPROPERTY_FIRST_ENUM].prop_enum == e && 3197 enum_map[i-ICALPROPERTY_FIRST_ENUM].prop == kind ){ 3198 return 1; 3199 } 3200 } 3201 3202 return 0; 3203 } 3204 3205 3206 const char* icalproperty_method_to_string(icalproperty_method method) 3207 { 3208 icalerror_check_arg_rz(method >= ICAL_METHOD_X,"method"); 3209 icalerror_check_arg_rz(method <= ICAL_METHOD_NONE,"method"); 3210 3211 return enum_map[method-ICALPROPERTY_FIRST_ENUM].str; 3212 } 3213 3214 icalproperty_method icalproperty_string_to_method(const char* str) 3215 { 3216 int i; 3217 3218 icalerror_check_arg_rx(str!=0,"str",ICAL_METHOD_NONE) 3219 3220 while(*str == ' '){ 3221 str++; 3222 } 3223 3224 for (i=ICAL_METHOD_X-ICALPROPERTY_FIRST_ENUM; 3225 i != ICAL_METHOD_NONE-ICALPROPERTY_FIRST_ENUM; 3226 i++) { 3227 if ( strcasecmp(enum_map[i].str, str) == 0) { 3228 return (icalproperty_method)enum_map[i].prop_enum; 3229 } 3230 } 3231 3232 return ICAL_METHOD_NONE; 3233 } 3234 3235 3236 const char* icalenum_status_to_string(icalproperty_status status) 3237 { 3238 icalerror_check_arg_rz(status >= ICAL_STATUS_X,"status"); 3239 icalerror_check_arg_rz(status <= ICAL_STATUS_NONE,"status"); 3240 3241 return enum_map[status-ICALPROPERTY_FIRST_ENUM].str; 3242 } 3243 3244 icalproperty_status icalenum_string_to_status(const char* str) 3245 { 3246 int i; 3247 3248 icalerror_check_arg_rx(str!=0,"str",ICAL_STATUS_NONE) 3249 3250 while(*str == ' '){ 3251 str++; 3252 } 3253 3254 for (i=ICAL_STATUS_X-ICALPROPERTY_FIRST_ENUM; 3255 i != ICAL_STATUS_NONE-ICALPROPERTY_FIRST_ENUM; 3256 i++) { 3257 if ( strcasecmp(enum_map[i].str, str) == 0) { 3258 return (icalproperty_status)enum_map[i].prop_enum; 3259 } 3260 } 3261 3262 return ICAL_STATUS_NONE; 3263 3264 } -
src/libical/icalderivedproperty.h
diff -Nurb libical-0.42.orig/src/libical/icalderivedproperty.h libical-0.42/src/libical/icalderivedproperty.h
old new 1 /* -*- Mode: C -*- 2 ====================================================================== 3 FILE: icalderivedproperties.{c,h} 4 CREATOR: eric 09 May 1999 5 6 $Id: icalderivedproperty.h.in,v 1.7 2007-04-30 13:57:48 artcancro Exp $ 7 8 (C) COPYRIGHT 2000, Eric Busboom, http://www.softwarestudio.org 9 ======================================================================*/ 10 11 12 #ifndef ICALDERIVEDPROPERTY_H 13 #define ICALDERIVEDPROPERTY_H 14 15 #include <time.h> 16 #include "icalparameter.h" 17 #include "icalderivedvalue.h" 18 #include "icalrecur.h" 19 20 typedef struct icalproperty_impl icalproperty; 21 22 typedef enum icalproperty_kind { 23 ICAL_ANY_PROPERTY = 0, 24 ICAL_ACTION_PROPERTY, 25 ICAL_ALLOWCONFLICT_PROPERTY, 26 ICAL_ATTACH_PROPERTY, 27 ICAL_ATTENDEE_PROPERTY, 28 ICAL_CALID_PROPERTY, 29 ICAL_CALMASTER_PROPERTY, 30 ICAL_CALSCALE_PROPERTY, 31 ICAL_CAPVERSION_PROPERTY, 32 ICAL_CARLEVEL_PROPERTY, 33 ICAL_CARID_PROPERTY, 34 ICAL_CATEGORIES_PROPERTY, 35 ICAL_CLASS_PROPERTY, 36 ICAL_CMD_PROPERTY, 37 ICAL_COMMENT_PROPERTY, 38 ICAL_COMPLETED_PROPERTY, 39 ICAL_COMPONENTS_PROPERTY, 40 ICAL_CONTACT_PROPERTY, 41 ICAL_CREATED_PROPERTY, 42 ICAL_CSID_PROPERTY, 43 ICAL_DATEMAX_PROPERTY, 44 ICAL_DATEMIN_PROPERTY, 45 ICAL_DECREED_PROPERTY, 46 ICAL_DEFAULTCHARSET_PROPERTY, 47 ICAL_DEFAULTLOCALE_PROPERTY, 48 ICAL_DEFAULTTZID_PROPERTY, 49 ICAL_DEFAULTVCARS_PROPERTY, 50 ICAL_DENY_PROPERTY, 51 ICAL_DESCRIPTION_PROPERTY, 52 ICAL_DTEND_PROPERTY, 53 ICAL_DTSTAMP_PROPERTY, 54 ICAL_DTSTART_PROPERTY, 55 ICAL_DUE_PROPERTY, 56 ICAL_DURATION_PROPERTY, 57 ICAL_EXDATE_PROPERTY, 58 ICAL_EXPAND_PROPERTY, 59 ICAL_EXRULE_PROPERTY, 60 ICAL_FREEBUSY_PROPERTY, 61 ICAL_GEO_PROPERTY, 62 ICAL_GRANT_PROPERTY, 63 ICAL_ITIPVERSION_PROPERTY, 64 ICAL_LASTMODIFIED_PROPERTY, 65 ICAL_LOCATION_PROPERTY, 66 ICAL_MAXCOMPONENTSIZE_PROPERTY, 67 ICAL_MAXDATE_PROPERTY, 68 ICAL_MAXRESULTS_PROPERTY, 69 ICAL_MAXRESULTSSIZE_PROPERTY, 70 ICAL_METHOD_PROPERTY, 71 ICAL_MINDATE_PROPERTY, 72 ICAL_MULTIPART_PROPERTY, 73 ICAL_NAME_PROPERTY, 74 ICAL_ORGANIZER_PROPERTY, 75 ICAL_OWNER_PROPERTY, 76 ICAL_PERCENTCOMPLETE_PROPERTY, 77 ICAL_PERMISSION_PROPERTY, 78 ICAL_PRIORITY_PROPERTY, 79 ICAL_PRODID_PROPERTY, 80 ICAL_QUERY_PROPERTY, 81 ICAL_QUERYLEVEL_PROPERTY, 82 ICAL_QUERYID_PROPERTY, 83 ICAL_QUERYNAME_PROPERTY, 84 ICAL_RDATE_PROPERTY, 85 ICAL_RECURACCEPTED_PROPERTY, 86 ICAL_RECUREXPAND_PROPERTY, 87 ICAL_RECURLIMIT_PROPERTY, 88 ICAL_RECURRENCEID_PROPERTY, 89 ICAL_RELATEDTO_PROPERTY, 90 ICAL_RELCALID_PROPERTY, 91 ICAL_REPEAT_PROPERTY, 92 ICAL_REQUESTSTATUS_PROPERTY, 93 ICAL_RESOURCES_PROPERTY, 94 ICAL_RESTRICTION_PROPERTY, 95 ICAL_RRULE_PROPERTY, 96 ICAL_SCOPE_PROPERTY, 97 ICAL_SEQUENCE_PROPERTY, 98 ICAL_STATUS_PROPERTY, 99 ICAL_STORESEXPANDED_PROPERTY, 100 ICAL_SUMMARY_PROPERTY, 101 ICAL_TARGET_PROPERTY, 102 ICAL_TRANSP_PROPERTY, 103 ICAL_TRIGGER_PROPERTY, 104 ICAL_TZID_PROPERTY, 105 ICAL_TZNAME_PROPERTY, 106 ICAL_TZOFFSETFROM_PROPERTY, 107 ICAL_TZOFFSETTO_PROPERTY, 108 ICAL_TZURL_PROPERTY, 109 ICAL_UID_PROPERTY, 110 ICAL_URL_PROPERTY, 111 ICAL_VERSION_PROPERTY, 112 ICAL_X_PROPERTY, 113 ICAL_XLICCLASS_PROPERTY, 114 ICAL_XLICCLUSTERCOUNT_PROPERTY, 115 ICAL_XLICERROR_PROPERTY, 116 ICAL_XLICMIMECHARSET_PROPERTY, 117 ICAL_XLICMIMECID_PROPERTY, 118 ICAL_XLICMIMECONTENTTYPE_PROPERTY, 119 ICAL_XLICMIMEENCODING_PROPERTY, 120 ICAL_XLICMIMEFILENAME_PROPERTY, 121 ICAL_XLICMIMEOPTINFO_PROPERTY, 122 ICAL_NO_PROPERTY 123 } icalproperty_kind; 124 125 126 /* ACTION */ 127 icalproperty* icalproperty_new_action(enum icalproperty_action v); 128 void icalproperty_set_action(icalproperty* prop, enum icalproperty_action v); 129 enum icalproperty_action icalproperty_get_action(const icalproperty* prop);icalproperty* icalproperty_vanew_action(enum icalproperty_action v, ...); 130 131 /* ALLOW-CONFLICT */ 132 icalproperty* icalproperty_new_allowconflict(const char* v); 133 void icalproperty_set_allowconflict(icalproperty* prop, const char* v); 134 const char* icalproperty_get_allowconflict(const icalproperty* prop);icalproperty* icalproperty_vanew_allowconflict(const char* v, ...); 135 136 /* ATTACH */ 137 icalproperty* icalproperty_new_attach(icalattach * v); 138 void icalproperty_set_attach(icalproperty* prop, icalattach * v); 139 icalattach * icalproperty_get_attach(const icalproperty* prop);icalproperty* icalproperty_vanew_attach(icalattach * v, ...); 140 141 /* ATTENDEE */ 142 icalproperty* icalproperty_new_attendee(const char* v); 143 void icalproperty_set_attendee(icalproperty* prop, const char* v); 144 const char* icalproperty_get_attendee(const icalproperty* prop);icalproperty* icalproperty_vanew_attendee(const char* v, ...); 145 146 /* CALID */ 147 icalproperty* icalproperty_new_calid(const char* v); 148 void icalproperty_set_calid(icalproperty* prop, const char* v); 149 const char* icalproperty_get_calid(const icalproperty* prop);icalproperty* icalproperty_vanew_calid(const char* v, ...); 150 151 /* CALMASTER */ 152 icalproperty* icalproperty_new_calmaster(const char* v); 153 void icalproperty_set_calmaster(icalproperty* prop, const char* v); 154 const char* icalproperty_get_calmaster(const icalproperty* prop);icalproperty* icalproperty_vanew_calmaster(const char* v, ...); 155 156 /* CALSCALE */ 157 icalproperty* icalproperty_new_calscale(const char* v); 158 void icalproperty_set_calscale(icalproperty* prop, const char* v); 159 const char* icalproperty_get_calscale(const icalproperty* prop);icalproperty* icalproperty_vanew_calscale(const char* v, ...); 160 161 /* CAP-VERSION */ 162 icalproperty* icalproperty_new_capversion(const char* v); 163 void icalproperty_set_capversion(icalproperty* prop, const char* v); 164 const char* icalproperty_get_capversion(const icalproperty* prop);icalproperty* icalproperty_vanew_capversion(const char* v, ...); 165 166 /* CAR-LEVEL */ 167 icalproperty* icalproperty_new_carlevel(enum icalproperty_carlevel v); 168 void icalproperty_set_carlevel(icalproperty* prop, enum icalproperty_carlevel v); 169 enum icalproperty_carlevel icalproperty_get_carlevel(const icalproperty* prop);icalproperty* icalproperty_vanew_carlevel(enum icalproperty_carlevel v, ...); 170 171 /* CARID */ 172 icalproperty* icalproperty_new_carid(const char* v); 173 void icalproperty_set_carid(icalproperty* prop, const char* v); 174 const char* icalproperty_get_carid(const icalproperty* prop);icalproperty* icalproperty_vanew_carid(const char* v, ...); 175 176 /* CATEGORIES */ 177 icalproperty* icalproperty_new_categories(const char* v); 178 void icalproperty_set_categories(icalproperty* prop, const char* v); 179 const char* icalproperty_get_categories(const icalproperty* prop);icalproperty* icalproperty_vanew_categories(const char* v, ...); 180 181 /* CLASS */ 182 icalproperty* icalproperty_new_class(enum icalproperty_class v); 183 void icalproperty_set_class(icalproperty* prop, enum icalproperty_class v); 184 enum icalproperty_class icalproperty_get_class(const icalproperty* prop);icalproperty* icalproperty_vanew_class(enum icalproperty_class v, ...); 185 186 /* CMD */ 187 icalproperty* icalproperty_new_cmd(enum icalproperty_cmd v); 188 void icalproperty_set_cmd(icalproperty* prop, enum icalproperty_cmd v); 189 enum icalproperty_cmd icalproperty_get_cmd(const icalproperty* prop);icalproperty* icalproperty_vanew_cmd(enum icalproperty_cmd v, ...); 190 191 /* COMMENT */ 192 icalproperty* icalproperty_new_comment(const char* v); 193 void icalproperty_set_comment(icalproperty* prop, const char* v); 194 const char* icalproperty_get_comment(const icalproperty* prop);icalproperty* icalproperty_vanew_comment(const char* v, ...); 195 196 /* COMPLETED */ 197 icalproperty* icalproperty_new_completed(struct icaltimetype v); 198 void icalproperty_set_completed(icalproperty* prop, struct icaltimetype v); 199 struct icaltimetype icalproperty_get_completed(const icalproperty* prop);icalproperty* icalproperty_vanew_completed(struct icaltimetype v, ...); 200 201 /* COMPONENTS */ 202 icalproperty* icalproperty_new_components(const char* v); 203 void icalproperty_set_components(icalproperty* prop, const char* v); 204 const char* icalproperty_get_components(const icalproperty* prop);icalproperty* icalproperty_vanew_components(const char* v, ...); 205 206 /* CONTACT */ 207 icalproperty* icalproperty_new_contact(const char* v); 208 void icalproperty_set_contact(icalproperty* prop, const char* v); 209 const char* icalproperty_get_contact(const icalproperty* prop);icalproperty* icalproperty_vanew_contact(const char* v, ...); 210 211 /* CREATED */ 212 icalproperty* icalproperty_new_created(struct icaltimetype v); 213 void icalproperty_set_created(icalproperty* prop, struct icaltimetype v); 214 struct icaltimetype icalproperty_get_created(const icalproperty* prop);icalproperty* icalproperty_vanew_created(struct icaltimetype v, ...); 215 216 /* CSID */ 217 icalproperty* icalproperty_new_csid(const char* v); 218 void icalproperty_set_csid(icalproperty* prop, const char* v); 219 const char* icalproperty_get_csid(const icalproperty* prop);icalproperty* icalproperty_vanew_csid(const char* v, ...); 220 221 /* DATE-MAX */ 222 icalproperty* icalproperty_new_datemax(struct icaltimetype v); 223 void icalproperty_set_datemax(icalproperty* prop, struct icaltimetype v); 224 struct icaltimetype icalproperty_get_datemax(const icalproperty* prop);icalproperty* icalproperty_vanew_datemax(struct icaltimetype v, ...); 225 226 /* DATE-MIN */ 227 icalproperty* icalproperty_new_datemin(struct icaltimetype v); 228 void icalproperty_set_datemin(icalproperty* prop, struct icaltimetype v); 229 struct icaltimetype icalproperty_get_datemin(const icalproperty* prop);icalproperty* icalproperty_vanew_datemin(struct icaltimetype v, ...); 230 231 /* DECREED */ 232 icalproperty* icalproperty_new_decreed(const char* v); 233 void icalproperty_set_decreed(icalproperty* prop, const char* v); 234 const char* icalproperty_get_decreed(const icalproperty* prop);icalproperty* icalproperty_vanew_decreed(const char* v, ...); 235 236 /* DEFAULT-CHARSET */ 237 icalproperty* icalproperty_new_defaultcharset(const char* v); 238 void icalproperty_set_defaultcharset(icalproperty* prop, const char* v); 239 const char* icalproperty_get_defaultcharset(const icalproperty* prop);icalproperty* icalproperty_vanew_defaultcharset(const char* v, ...); 240 241 /* DEFAULT-LOCALE */ 242 icalproperty* icalproperty_new_defaultlocale(const char* v); 243 void icalproperty_set_defaultlocale(icalproperty* prop, const char* v); 244 const char* icalproperty_get_defaultlocale(const icalproperty* prop);icalproperty* icalproperty_vanew_defaultlocale(const char* v, ...); 245 246 /* DEFAULT-TZID */ 247 icalproperty* icalproperty_new_defaulttzid(const char* v); 248 void icalproperty_set_defaulttzid(icalproperty* prop, const char* v); 249 const char* icalproperty_get_defaulttzid(const icalproperty* prop);icalproperty* icalproperty_vanew_defaulttzid(const char* v, ...); 250 251 /* DEFAULT-VCARS */ 252 icalproperty* icalproperty_new_defaultvcars(const char* v); 253 void icalproperty_set_defaultvcars(icalproperty* prop, const char* v); 254 const char* icalproperty_get_defaultvcars(const icalproperty* prop);icalproperty* icalproperty_vanew_defaultvcars(const char* v, ...); 255 256 /* DENY */ 257 icalproperty* icalproperty_new_deny(const char* v); 258 void icalproperty_set_deny(icalproperty* prop, const char* v); 259 const char* icalproperty_get_deny(const icalproperty* prop);icalproperty* icalproperty_vanew_deny(const char* v, ...); 260 261 /* DESCRIPTION */ 262 icalproperty* icalproperty_new_description(const char* v); 263 void icalproperty_set_description(icalproperty* prop, const char* v); 264 const char* icalproperty_get_description(const icalproperty* prop);icalproperty* icalproperty_vanew_description(const char* v, ...); 265 266 /* DTEND */ 267 icalproperty* icalproperty_new_dtend(struct icaltimetype v); 268 void icalproperty_set_dtend(icalproperty* prop, struct icaltimetype v); 269 struct icaltimetype icalproperty_get_dtend(const icalproperty* prop);icalproperty* icalproperty_vanew_dtend(struct icaltimetype v, ...); 270 271 /* DTSTAMP */ 272 icalproperty* icalproperty_new_dtstamp(struct icaltimetype v); 273 void icalproperty_set_dtstamp(icalproperty* prop, struct icaltimetype v); 274 struct icaltimetype icalproperty_get_dtstamp(const icalproperty* prop);icalproperty* icalproperty_vanew_dtstamp(struct icaltimetype v, ...); 275 276 /* DTSTART */ 277 icalproperty* icalproperty_new_dtstart(struct icaltimetype v); 278 void icalproperty_set_dtstart(icalproperty* prop, struct icaltimetype v); 279 struct icaltimetype icalproperty_get_dtstart(const icalproperty* prop);icalproperty* icalproperty_vanew_dtstart(struct icaltimetype v, ...); 280 281 /* DUE */ 282 icalproperty* icalproperty_new_due(struct icaltimetype v); 283 void icalproperty_set_due(icalproperty* prop, struct icaltimetype v); 284 struct icaltimetype icalproperty_get_due(const icalproperty* prop);icalproperty* icalproperty_vanew_due(struct icaltimetype v, ...); 285 286 /* DURATION */ 287 icalproperty* icalproperty_new_duration(struct icaldurationtype v); 288 void icalproperty_set_duration(icalproperty* prop, struct icaldurationtype v); 289 struct icaldurationtype icalproperty_get_duration(const icalproperty* prop);icalproperty* icalproperty_vanew_duration(struct icaldurationtype v, ...); 290 291 /* EXDATE */ 292 icalproperty* icalproperty_new_exdate(struct icaltimetype v); 293 void icalproperty_set_exdate(icalproperty* prop, struct icaltimetype v); 294 struct icaltimetype icalproperty_get_exdate(const icalproperty* prop);icalproperty* icalproperty_vanew_exdate(struct icaltimetype v, ...); 295 296 /* EXPAND */ 297 icalproperty* icalproperty_new_expand(int v); 298 void icalproperty_set_expand(icalproperty* prop, int v); 299 int icalproperty_get_expand(const icalproperty* prop);icalproperty* icalproperty_vanew_expand(int v, ...); 300 301 /* EXRULE */ 302 icalproperty* icalproperty_new_exrule(struct icalrecurrencetype v); 303 void icalproperty_set_exrule(icalproperty* prop, struct icalrecurrencetype v); 304 struct icalrecurrencetype icalproperty_get_exrule(const icalproperty* prop);icalproperty* icalproperty_vanew_exrule(struct icalrecurrencetype v, ...); 305 306 /* FREEBUSY */ 307 icalproperty* icalproperty_new_freebusy(struct icalperiodtype v); 308 void icalproperty_set_freebusy(icalproperty* prop, struct icalperiodtype v); 309 struct icalperiodtype icalproperty_get_freebusy(const icalproperty* prop);icalproperty* icalproperty_vanew_freebusy(struct icalperiodtype v, ...); 310 311 /* GEO */ 312 icalproperty* icalproperty_new_geo(struct icalgeotype v); 313 void icalproperty_set_geo(icalproperty* prop, struct icalgeotype v); 314 struct icalgeotype icalproperty_get_geo(const icalproperty* prop);icalproperty* icalproperty_vanew_geo(struct icalgeotype v, ...); 315 316 /* GRANT */ 317 icalproperty* icalproperty_new_grant(const char* v); 318 void icalproperty_set_grant(icalproperty* prop, const char* v); 319 const char* icalproperty_get_grant(const icalproperty* prop);icalproperty* icalproperty_vanew_grant(const char* v, ...); 320 321 /* ITIP-VERSION */ 322 icalproperty* icalproperty_new_itipversion(const char* v); 323 void icalproperty_set_itipversion(icalproperty* prop, const char* v); 324 const char* icalproperty_get_itipversion(const icalproperty* prop);icalproperty* icalproperty_vanew_itipversion(const char* v, ...); 325 326 /* LAST-MODIFIED */ 327 icalproperty* icalproperty_new_lastmodified(struct icaltimetype v); 328 void icalproperty_set_lastmodified(icalproperty* prop, struct icaltimetype v); 329 struct icaltimetype icalproperty_get_lastmodified(const icalproperty* prop);icalproperty* icalproperty_vanew_lastmodified(struct icaltimetype v, ...); 330 331 /* LOCATION */ 332 icalproperty* icalproperty_new_location(const char* v); 333 void icalproperty_set_location(icalproperty* prop, const char* v); 334 const char* icalproperty_get_location(const icalproperty* prop);icalproperty* icalproperty_vanew_location(const char* v, ...); 335 336 /* MAX-COMPONENT-SIZE */ 337 icalproperty* icalproperty_new_maxcomponentsize(int v); 338 void icalproperty_set_maxcomponentsize(icalproperty* prop, int v); 339 int icalproperty_get_maxcomponentsize(const icalproperty* prop);icalproperty* icalproperty_vanew_maxcomponentsize(int v, ...); 340 341 /* MAXDATE */ 342 icalproperty* icalproperty_new_maxdate(struct icaltimetype v); 343 void icalproperty_set_maxdate(icalproperty* prop, struct icaltimetype v); 344 struct icaltimetype icalproperty_get_maxdate(const icalproperty* prop);icalproperty* icalproperty_vanew_maxdate(struct icaltimetype v, ...); 345 346 /* MAXRESULTS */ 347 icalproperty* icalproperty_new_maxresults(int v); 348 void icalproperty_set_maxresults(icalproperty* prop, int v); 349 int icalproperty_get_maxresults(const icalproperty* prop);icalproperty* icalproperty_vanew_maxresults(int v, ...); 350 351 /* MAXRESULTSSIZE */ 352 icalproperty* icalproperty_new_maxresultssize(int v); 353 void icalproperty_set_maxresultssize(icalproperty* prop, int v); 354 int icalproperty_get_maxresultssize(const icalproperty* prop);icalproperty* icalproperty_vanew_maxresultssize(int v, ...); 355 356 /* METHOD */ 357 icalproperty* icalproperty_new_method(enum icalproperty_method v); 358 void icalproperty_set_method(icalproperty* prop, enum icalproperty_method v); 359 enum icalproperty_method icalproperty_get_method(const icalproperty* prop);icalproperty* icalproperty_vanew_method(enum icalproperty_method v, ...); 360 361 /* MINDATE */ 362 icalproperty* icalproperty_new_mindate(struct icaltimetype v); 363 void icalproperty_set_mindate(icalproperty* prop, struct icaltimetype v); 364 struct icaltimetype icalproperty_get_mindate(const icalproperty* prop);icalproperty* icalproperty_vanew_mindate(struct icaltimetype v, ...); 365 366 /* MULTIPART */ 367 icalproperty* icalproperty_new_multipart(const char* v); 368 void icalproperty_set_multipart(icalproperty* prop, const char* v); 369 const char* icalproperty_get_multipart(const icalproperty* prop);icalproperty* icalproperty_vanew_multipart(const char* v, ...); 370 371 /* NAME */ 372 icalproperty* icalproperty_new_name(const char* v); 373 void icalproperty_set_name(icalproperty* prop, const char* v); 374 const char* icalproperty_get_name(const icalproperty* prop);icalproperty* icalproperty_vanew_name(const char* v, ...); 375 376 /* ORGANIZER */ 377 icalproperty* icalproperty_new_organizer(const char* v); 378 void icalproperty_set_organizer(icalproperty* prop, const char* v); 379 const char* icalproperty_get_organizer(const icalproperty* prop);icalproperty* icalproperty_vanew_organizer(const char* v, ...); 380 381 /* OWNER */ 382 icalproperty* icalproperty_new_owner(const char* v); 383 void icalproperty_set_owner(icalproperty* prop, const char* v); 384 const char* icalproperty_get_owner(const icalproperty* prop);icalproperty* icalproperty_vanew_owner(const char* v, ...); 385 386 /* PERCENT-COMPLETE */ 387 icalproperty* icalproperty_new_percentcomplete(int v); 388 void icalproperty_set_percentcomplete(icalproperty* prop, int v); 389 int icalproperty_get_percentcomplete(const icalproperty* prop);icalproperty* icalproperty_vanew_percentcomplete(int v, ...); 390 391 /* PERMISSION */ 392 icalproperty* icalproperty_new_permission(const char* v); 393 void icalproperty_set_permission(icalproperty* prop, const char* v); 394 const char* icalproperty_get_permission(const icalproperty* prop);icalproperty* icalproperty_vanew_permission(const char* v, ...); 395 396 /* PRIORITY */ 397 icalproperty* icalproperty_new_priority(int v); 398 void icalproperty_set_priority(icalproperty* prop, int v); 399 int icalproperty_get_priority(const icalproperty* prop);icalproperty* icalproperty_vanew_priority(int v, ...); 400 401 /* PRODID */ 402 icalproperty* icalproperty_new_prodid(const char* v); 403 void icalproperty_set_prodid(icalproperty* prop, const char* v); 404 const char* icalproperty_get_prodid(const icalproperty* prop);icalproperty* icalproperty_vanew_prodid(const char* v, ...); 405 406 /* QUERY */ 407 icalproperty* icalproperty_new_query(const char* v); 408 void icalproperty_set_query(icalproperty* prop, const char* v); 409 const char* icalproperty_get_query(const icalproperty* prop);icalproperty* icalproperty_vanew_query(const char* v, ...); 410 411 /* QUERY-LEVEL */ 412 icalproperty* icalproperty_new_querylevel(enum icalproperty_querylevel v); 413 void icalproperty_set_querylevel(icalproperty* prop, enum icalproperty_querylevel v); 414 enum icalproperty_querylevel icalproperty_get_querylevel(const icalproperty* prop);icalproperty* icalproperty_vanew_querylevel(enum icalproperty_querylevel v, ...); 415 416 /* QUERYID */ 417 icalproperty* icalproperty_new_queryid(const char* v); 418 void icalproperty_set_queryid(icalproperty* prop, const char* v); 419 const char* icalproperty_get_queryid(const icalproperty* prop);icalproperty* icalproperty_vanew_queryid(const char* v, ...); 420 421 /* QUERYNAME */ 422 icalproperty* icalproperty_new_queryname(const char* v); 423 void icalproperty_set_queryname(icalproperty* prop, const char* v); 424 const char* icalproperty_get_queryname(const icalproperty* prop);icalproperty* icalproperty_vanew_queryname(const char* v, ...); 425 426 /* RDATE */ 427 icalproperty* icalproperty_new_rdate(struct icaldatetimeperiodtype v); 428 void icalproperty_set_rdate(icalproperty* prop, struct icaldatetimeperiodtype v); 429 struct icaldatetimeperiodtype icalproperty_get_rdate(const icalproperty* prop);icalproperty* icalproperty_vanew_rdate(struct icaldatetimeperiodtype v, ...); 430 431 /* RECUR-ACCEPTED */ 432 icalproperty* icalproperty_new_recuraccepted(const char* v); 433 void icalproperty_set_recuraccepted(icalproperty* prop, const char* v); 434 const char* icalproperty_get_recuraccepted(const icalproperty* prop);icalproperty* icalproperty_vanew_recuraccepted(const char* v, ...); 435 436 /* RECUR-EXPAND */ 437 icalproperty* icalproperty_new_recurexpand(const char* v); 438 void icalproperty_set_recurexpand(icalproperty* prop, const char* v); 439 const char* icalproperty_get_recurexpand(const icalproperty* prop);icalproperty* icalproperty_vanew_recurexpand(const char* v, ...); 440 441 /* RECUR-LIMIT */ 442 icalproperty* icalproperty_new_recurlimit(const char* v); 443 void icalproperty_set_recurlimit(icalproperty* prop, const char* v); 444 const char* icalproperty_get_recurlimit(const icalproperty* prop);icalproperty* icalproperty_vanew_recurlimit(const char* v, ...); 445 446 /* RECURRENCE-ID */ 447 icalproperty* icalproperty_new_recurrenceid(struct icaltimetype v); 448 void icalproperty_set_recurrenceid(icalproperty* prop, struct icaltimetype v); 449 struct icaltimetype icalproperty_get_recurrenceid(const icalproperty* prop);icalproperty* icalproperty_vanew_recurrenceid(struct icaltimetype v, ...); 450 451 /* RELATED-TO */ 452 icalproperty* icalproperty_new_relatedto(const char* v); 453 void icalproperty_set_relatedto(icalproperty* prop, const char* v); 454 const char* icalproperty_get_relatedto(const icalproperty* prop);icalproperty* icalproperty_vanew_relatedto(const char* v, ...); 455 456 /* RELCALID */ 457 icalproperty* icalproperty_new_relcalid(const char* v); 458 void icalproperty_set_relcalid(icalproperty* prop, const char* v); 459 const char* icalproperty_get_relcalid(const icalproperty* prop);icalproperty* icalproperty_vanew_relcalid(const char* v, ...); 460 461 /* REPEAT */ 462 icalproperty* icalproperty_new_repeat(int v); 463 void icalproperty_set_repeat(icalproperty* prop, int v); 464 int icalproperty_get_repeat(const icalproperty* prop);icalproperty* icalproperty_vanew_repeat(int v, ...); 465 466 /* REQUEST-STATUS */ 467 icalproperty* icalproperty_new_requeststatus(struct icalreqstattype v); 468 void icalproperty_set_requeststatus(icalproperty* prop, struct icalreqstattype v); 469 struct icalreqstattype icalproperty_get_requeststatus(const icalproperty* prop);icalproperty* icalproperty_vanew_requeststatus(struct icalreqstattype v, ...); 470 471 /* RESOURCES */ 472 icalproperty* icalproperty_new_resources(const char* v); 473 void icalproperty_set_resources(icalproperty* prop, const char* v); 474 const char* icalproperty_get_resources(const icalproperty* prop);icalproperty* icalproperty_vanew_resources(const char* v, ...); 475 476 /* RESTRICTION */ 477 icalproperty* icalproperty_new_restriction(const char* v); 478 void icalproperty_set_restriction(icalproperty* prop, const char* v); 479 const char* icalproperty_get_restriction(const icalproperty* prop);icalproperty* icalproperty_vanew_restriction(const char* v, ...); 480 481 /* RRULE */ 482 icalproperty* icalproperty_new_rrule(struct icalrecurrencetype v); 483 void icalproperty_set_rrule(icalproperty* prop, struct icalrecurrencetype v); 484 struct icalrecurrencetype icalproperty_get_rrule(const icalproperty* prop);icalproperty* icalproperty_vanew_rrule(struct icalrecurrencetype v, ...); 485 486 /* SCOPE */ 487 icalproperty* icalproperty_new_scope(const char* v); 488 void icalproperty_set_scope(icalproperty* prop, const char* v); 489 const char* icalproperty_get_scope(const icalproperty* prop);icalproperty* icalproperty_vanew_scope(const char* v, ...); 490 491 /* SEQUENCE */ 492 icalproperty* icalproperty_new_sequence(int v); 493 void icalproperty_set_sequence(icalproperty* prop, int v); 494 int icalproperty_get_sequence(const icalproperty* prop);icalproperty* icalproperty_vanew_sequence(int v, ...); 495 496 /* STATUS */ 497 icalproperty* icalproperty_new_status(enum icalproperty_status v); 498 void icalproperty_set_status(icalproperty* prop, enum icalproperty_status v); 499 enum icalproperty_status icalproperty_get_status(const icalproperty* prop);icalproperty* icalproperty_vanew_status(enum icalproperty_status v, ...); 500 501 /* STORES-EXPANDED */ 502 icalproperty* icalproperty_new_storesexpanded(const char* v); 503 void icalproperty_set_storesexpanded(icalproperty* prop, const char* v); 504 const char* icalproperty_get_storesexpanded(const icalproperty* prop);icalproperty* icalproperty_vanew_storesexpanded(const char* v, ...); 505 506 /* SUMMARY */ 507 icalproperty* icalproperty_new_summary(const char* v); 508 void icalproperty_set_summary(icalproperty* prop, const char* v); 509 const char* icalproperty_get_summary(const icalproperty* prop);icalproperty* icalproperty_vanew_summary(const char* v, ...); 510 511 /* TARGET */ 512 icalproperty* icalproperty_new_target(const char* v); 513 void icalproperty_set_target(icalproperty* prop, const char* v); 514 const char* icalproperty_get_target(const icalproperty* prop);icalproperty* icalproperty_vanew_target(const char* v, ...); 515 516 /* TRANSP */ 517 icalproperty* icalproperty_new_transp(enum icalproperty_transp v); 518 void icalproperty_set_transp(icalproperty* prop, enum icalproperty_transp v); 519 enum icalproperty_transp icalproperty_get_transp(const icalproperty* prop);icalproperty* icalproperty_vanew_transp(enum icalproperty_transp v, ...); 520 521 /* TRIGGER */ 522 icalproperty* icalproperty_new_trigger(struct icaltriggertype v); 523 void icalproperty_set_trigger(icalproperty* prop, struct icaltriggertype v); 524 struct icaltriggertype icalproperty_get_trigger(const icalproperty* prop);icalproperty* icalproperty_vanew_trigger(struct icaltriggertype v, ...); 525 526 /* TZID */ 527 icalproperty* icalproperty_new_tzid(const char* v); 528 void icalproperty_set_tzid(icalproperty* prop, const char* v); 529 const char* icalproperty_get_tzid(const icalproperty* prop);icalproperty* icalproperty_vanew_tzid(const char* v, ...); 530 531 /* TZNAME */ 532 icalproperty* icalproperty_new_tzname(const char* v); 533 void icalproperty_set_tzname(icalproperty* prop, const char* v); 534 const char* icalproperty_get_tzname(const icalproperty* prop);icalproperty* icalproperty_vanew_tzname(const char* v, ...); 535 536 /* TZOFFSETFROM */ 537 icalproperty* icalproperty_new_tzoffsetfrom(int v); 538 void icalproperty_set_tzoffsetfrom(icalproperty* prop, int v); 539 int icalproperty_get_tzoffsetfrom(const icalproperty* prop);icalproperty* icalproperty_vanew_tzoffsetfrom(int v, ...); 540 541 /* TZOFFSETTO */ 542 icalproperty* icalproperty_new_tzoffsetto(int v); 543 void icalproperty_set_tzoffsetto(icalproperty* prop, int v); 544 int icalproperty_get_tzoffsetto(const icalproperty* prop);icalproperty* icalproperty_vanew_tzoffsetto(int v, ...); 545 546 /* TZURL */ 547 icalproperty* icalproperty_new_tzurl(const char* v); 548 void icalproperty_set_tzurl(icalproperty* prop, const char* v); 549 const char* icalproperty_get_tzurl(const icalproperty* prop);icalproperty* icalproperty_vanew_tzurl(const char* v, ...); 550 551 /* UID */ 552 icalproperty* icalproperty_new_uid(const char* v); 553 void icalproperty_set_uid(icalproperty* prop, const char* v); 554 const char* icalproperty_get_uid(const icalproperty* prop);icalproperty* icalproperty_vanew_uid(const char* v, ...); 555 556 /* URL */ 557 icalproperty* icalproperty_new_url(const char* v); 558 void icalproperty_set_url(icalproperty* prop, const char* v); 559 const char* icalproperty_get_url(const icalproperty* prop);icalproperty* icalproperty_vanew_url(const char* v, ...); 560 561 /* VERSION */ 562 icalproperty* icalproperty_new_version(const char* v); 563 void icalproperty_set_version(icalproperty* prop, const char* v); 564 const char* icalproperty_get_version(const icalproperty* prop);icalproperty* icalproperty_vanew_version(const char* v, ...); 565 566 /* X */ 567 icalproperty* icalproperty_new_x(const char* v); 568 void icalproperty_set_x(icalproperty* prop, const char* v); 569 const char* icalproperty_get_x(const icalproperty* prop);icalproperty* icalproperty_vanew_x(const char* v, ...); 570 571 /* X-LIC-CLASS */ 572 icalproperty* icalproperty_new_xlicclass(enum icalproperty_xlicclass v); 573 void icalproperty_set_xlicclass(icalproperty* prop, enum icalproperty_xlicclass v); 574 enum icalproperty_xlicclass icalproperty_get_xlicclass(const icalproperty* prop);icalproperty* icalproperty_vanew_xlicclass(enum icalproperty_xlicclass v, ...); 575 576 /* X-LIC-CLUSTERCOUNT */ 577 icalproperty* icalproperty_new_xlicclustercount(const char* v); 578 void icalproperty_set_xlicclustercount(icalproperty* prop, const char* v); 579 const char* icalproperty_get_xlicclustercount(const icalproperty* prop);icalproperty* icalproperty_vanew_xlicclustercount(const char* v, ...); 580 581 /* X-LIC-ERROR */ 582 icalproperty* icalproperty_new_xlicerror(const char* v); 583 void icalproperty_set_xlicerror(icalproperty* prop, const char* v); 584 const char* icalproperty_get_xlicerror(const icalproperty* prop);icalproperty* icalproperty_vanew_xlicerror(const char* v, ...); 585 586 /* X-LIC-MIMECHARSET */ 587 icalproperty* icalproperty_new_xlicmimecharset(const char* v); 588 void icalproperty_set_xlicmimecharset(icalproperty* prop, const char* v); 589 const char* icalproperty_get_xlicmimecharset(const icalproperty* prop);icalproperty* icalproperty_vanew_xlicmimecharset(const char* v, ...); 590 591 /* X-LIC-MIMECID */ 592 icalproperty* icalproperty_new_xlicmimecid(const char* v); 593 void icalproperty_set_xlicmimecid(icalproperty* prop, const char* v); 594 const char* icalproperty_get_xlicmimecid(const icalproperty* prop);icalproperty* icalproperty_vanew_xlicmimecid(const char* v, ...); 595 596 /* X-LIC-MIMECONTENTTYPE */ 597 icalproperty* icalproperty_new_xlicmimecontenttype(const char* v); 598 void icalproperty_set_xlicmimecontenttype(icalproperty* prop, const char* v); 599 const char* icalproperty_get_xlicmimecontenttype(const icalproperty* prop);icalproperty* icalproperty_vanew_xlicmimecontenttype(const char* v, ...); 600 601 /* X-LIC-MIMEENCODING */ 602 icalproperty* icalproperty_new_xlicmimeencoding(const char* v); 603 void icalproperty_set_xlicmimeencoding(icalproperty* prop, const char* v); 604 const char* icalproperty_get_xlicmimeencoding(const icalproperty* prop);icalproperty* icalproperty_vanew_xlicmimeencoding(const char* v, ...); 605 606 /* X-LIC-MIMEFILENAME */ 607 icalproperty* icalproperty_new_xlicmimefilename(const char* v); 608 void icalproperty_set_xlicmimefilename(icalproperty* prop, const char* v); 609 const char* icalproperty_get_xlicmimefilename(const icalproperty* prop);icalproperty* icalproperty_vanew_xlicmimefilename(const char* v, ...); 610 611 /* X-LIC-MIMEOPTINFO */ 612 icalproperty* icalproperty_new_xlicmimeoptinfo(const char* v); 613 void icalproperty_set_xlicmimeoptinfo(icalproperty* prop, const char* v); 614 const char* icalproperty_get_xlicmimeoptinfo(const icalproperty* prop);icalproperty* icalproperty_vanew_xlicmimeoptinfo(const char* v, ...); 615 616 617 #endif /*ICALPROPERTY_H*/ -
src/libical/icalderivedvalue.c
diff -Nurb libical-0.42.orig/src/libical/icalderivedvalue.c libical-0.42/src/libical/icalderivedvalue.c
old new 1 /* -*- Mode: C -*- */ 2 /*====================================================================== 3 FILE: icalvalue.c 4 CREATOR: eric 02 May 1999 5 6 $Id: icalderivedvalue.c.in,v 1.15 2007-04-30 13:57:48 artcancro Exp $ 7 8 9 (C) COPYRIGHT 2000, Eric Busboom, http://www.softwarestudio.org 10 11 This program is free software; you can redistribute it and/or modify 12 it under the terms of either: 13 14 The LGPL as published by the Free Software Foundation, version 15 2.1, available at: http://www.fsf.org/copyleft/lesser.html 16 17 Or: 18 19 The Mozilla Public License Version 1.0. You may obtain a copy of 20 the License at http://www.mozilla.org/MPL/ 21 22 The original code is icalvalue.c 23 24 Contributions from: 25 Graham Davison (g.m.davison@computer.org) 26 27 28 ======================================================================*/ 29 30 #ifdef HAVE_CONFIG_H 31 #include <config.h> 32 #endif 33 34 #include "icalerror.h" 35 #include "icalmemory.h" 36 #include "icalparser.h" 37 #include "icalenums.h" 38 39 #include "icalvalueimpl.h" 40 41 #include <stdlib.h> /* for malloc */ 42 #include <stdio.h> /* for snprintf */ 43 #include <string.h> /* For memset, others */ 44 #include <stddef.h> /* For offsetof() macro */ 45 #include <errno.h> 46 #include <time.h> /* for mktime */ 47 #include <stdlib.h> /* for atoi and atof */ 48 #include <limits.h> /* for SHRT_MAX */ 49 50 #ifdef WIN32 51 #define strcasecmp stricmp 52 #endif 53 54 struct icalvalue_impl* icalvalue_new_impl(icalvalue_kind kind); 55 56 /* This map associates each of the value types with its string 57 representation */ 58 struct icalvalue_kind_map { 59 icalvalue_kind kind; 60 char name[20]; 61 }; 62 63 static const struct icalvalue_kind_map value_map[31]={ 64 {ICAL_QUERY_VALUE,"QUERY"}, 65 {ICAL_DATE_VALUE,"DATE"}, 66 {ICAL_ATTACH_VALUE,"ATTACH"}, 67 {ICAL_GEO_VALUE,"GEO"}, 68 {ICAL_STATUS_VALUE,"STATUS"}, 69 {ICAL_TRANSP_VALUE,"TRANSP"}, 70 {ICAL_STRING_VALUE,"STRING"}, 71 {ICAL_TEXT_VALUE,"TEXT"}, 72 {ICAL_REQUESTSTATUS_VALUE,"REQUEST-STATUS"}, 73 {ICAL_CMD_VALUE,"CMD"}, 74 {ICAL_BINARY_VALUE,"BINARY"}, 75 {ICAL_QUERYLEVEL_VALUE,"QUERY-LEVEL"}, 76 {ICAL_PERIOD_VALUE,"PERIOD"}, 77 {ICAL_FLOAT_VALUE,"FLOAT"}, 78 {ICAL_DATETIMEPERIOD_VALUE,"DATE-TIME-PERIOD"}, 79 {ICAL_CARLEVEL_VALUE,"CAR-LEVEL"}, 80 {ICAL_INTEGER_VALUE,"INTEGER"}, 81 {ICAL_CLASS_VALUE,"CLASS"}, 82 {ICAL_URI_VALUE,"URI"}, 83 {ICAL_DURATION_VALUE,"DURATION"}, 84 {ICAL_BOOLEAN_VALUE,"BOOLEAN"}, 85 {ICAL_X_VALUE,"X"}, 86 {ICAL_CALADDRESS_VALUE,"CAL-ADDRESS"}, 87 {ICAL_TRIGGER_VALUE,"TRIGGER"}, 88 {ICAL_XLICCLASS_VALUE,"X-LIC-CLASS"}, 89 {ICAL_RECUR_VALUE,"RECUR"}, 90 {ICAL_ACTION_VALUE,"ACTION"}, 91 {ICAL_DATETIME_VALUE,"DATE-TIME"}, 92 {ICAL_UTCOFFSET_VALUE,"UTC-OFFSET"}, 93 {ICAL_METHOD_VALUE,"METHOD"}, 94 {ICAL_NO_VALUE,""} 95 }; 96 97 98 icalvalue* icalvalue_new_query (const char* v){ 99 struct icalvalue_impl* impl = icalvalue_new_impl(ICAL_QUERY_VALUE); 100 icalerror_check_arg_rz( (v!=0),"v"); 101 102 icalvalue_set_query((icalvalue*)impl,v); 103 return (icalvalue*)impl; 104 } 105 void icalvalue_set_query(icalvalue* value, const char* v) { 106 struct icalvalue_impl* impl; 107 icalerror_check_arg_rv( (value!=0),"value"); 108 icalerror_check_arg_rv( (v!=0),"v"); 109 110 icalerror_check_value_type(value, ICAL_QUERY_VALUE); 111 impl = (struct icalvalue_impl*)value; 112 if(impl->data.v_string!=0) {free((void*)impl->data.v_string);} 113 114 115 impl->data.v_string = icalmemory_strdup(v); 116 117 if (impl->data.v_string == 0){ 118 errno = ENOMEM; 119 } 120 121 122 icalvalue_reset_kind(impl); 123 } 124 const char* icalvalue_get_query (const icalvalue* value) { 125 126 icalerror_check_arg_rz ((value!=0),"value"); 127 icalerror_check_value_type (value, ICAL_QUERY_VALUE); 128 return ((struct icalvalue_impl*)value)->data.v_string; 129 } 130 131 132 133 icalvalue* icalvalue_new_date (struct icaltimetype v){ 134 struct icalvalue_impl* impl = icalvalue_new_impl(ICAL_DATE_VALUE); 135 136 icalvalue_set_date((icalvalue*)impl,v); 137 return (icalvalue*)impl; 138 } 139 void icalvalue_set_date(icalvalue* value, struct icaltimetype v) { 140 struct icalvalue_impl* impl; 141 icalerror_check_arg_rv( (value!=0),"value"); 142 143 icalerror_check_value_type(value, ICAL_DATE_VALUE); 144 impl = (struct icalvalue_impl*)value; 145 146 147 impl->data.v_time = v; 148 149 icalvalue_reset_kind(impl); 150 } 151 struct icaltimetype icalvalue_get_date (const icalvalue* value) { 152 153 icalerror_check_arg ((value!=0),"value"); 154 icalerror_check_value_type (value, ICAL_DATE_VALUE); 155 return ((struct icalvalue_impl*)value)->data.v_time; 156 } 157 158 159 160 icalvalue* icalvalue_new_geo (struct icalgeotype v){ 161 struct icalvalue_impl* impl = icalvalue_new_impl(ICAL_GEO_VALUE); 162 163 icalvalue_set_geo((icalvalue*)impl,v); 164 return (icalvalue*)impl; 165 } 166 void icalvalue_set_geo(icalvalue* value, struct icalgeotype v) { 167 struct icalvalue_impl* impl; 168 icalerror_check_arg_rv( (value!=0),"value"); 169 170 icalerror_check_value_type(value, ICAL_GEO_VALUE); 171 impl = (struct icalvalue_impl*)value; 172 173 174 impl->data.v_geo = v; 175 176 icalvalue_reset_kind(impl); 177 } 178 struct icalgeotype icalvalue_get_geo (const icalvalue* value) { 179 180 icalerror_check_arg ((value!=0),"value"); 181 icalerror_check_value_type (value, ICAL_GEO_VALUE); 182 return ((struct icalvalue_impl*)value)->data.v_geo; 183 } 184 185 186 187 icalvalue* icalvalue_new_status (enum icalproperty_status v){ 188 struct icalvalue_impl* impl = icalvalue_new_impl(ICAL_STATUS_VALUE); 189 190 icalvalue_set_status((icalvalue*)impl,v); 191 return (icalvalue*)impl; 192 } 193 void icalvalue_set_status(icalvalue* value, enum icalproperty_status v) { 194 struct icalvalue_impl* impl; 195 icalerror_check_arg_rv( (value!=0),"value"); 196 197 icalerror_check_value_type(value, ICAL_STATUS_VALUE); 198 impl = (struct icalvalue_impl*)value; 199 200 201 impl->data.v_enum = v; 202 203 icalvalue_reset_kind(impl); 204 } 205 enum icalproperty_status icalvalue_get_status (const icalvalue* value) { 206 207 icalerror_check_arg ((value!=0),"value"); 208 icalerror_check_value_type (value, ICAL_STATUS_VALUE); 209 return ((struct icalvalue_impl*)value)->data.v_enum; 210 } 211 212 213 214 icalvalue* icalvalue_new_transp (enum icalproperty_transp v){ 215 struct icalvalue_impl* impl = icalvalue_new_impl(ICAL_TRANSP_VALUE); 216 217 icalvalue_set_transp((icalvalue*)impl,v); 218 return (icalvalue*)impl; 219 } 220 void icalvalue_set_transp(icalvalue* value, enum icalproperty_transp v) { 221 struct icalvalue_impl* impl; 222 icalerror_check_arg_rv( (value!=0),"value"); 223 224 icalerror_check_value_type(value, ICAL_TRANSP_VALUE); 225 impl = (struct icalvalue_impl*)value; 226 227 228 impl->data.v_enum = v; 229 230 icalvalue_reset_kind(impl); 231 } 232 enum icalproperty_transp icalvalue_get_transp (const icalvalue* value) { 233 234 icalerror_check_arg ((value!=0),"value"); 235 icalerror_check_value_type (value, ICAL_TRANSP_VALUE); 236 return ((struct icalvalue_impl*)value)->data.v_enum; 237 } 238 239 240 241 icalvalue* icalvalue_new_string (const char* v){ 242 struct icalvalue_impl* impl = icalvalue_new_impl(ICAL_STRING_VALUE); 243 icalerror_check_arg_rz( (v!=0),"v"); 244 245 icalvalue_set_string((icalvalue*)impl,v); 246 return (icalvalue*)impl; 247 } 248 void icalvalue_set_string(icalvalue* value, const char* v) { 249 struct icalvalue_impl* impl; 250 icalerror_check_arg_rv( (value!=0),"value"); 251 icalerror_check_arg_rv( (v!=0),"v"); 252 253 icalerror_check_value_type(value, ICAL_STRING_VALUE); 254 impl = (struct icalvalue_impl*)value; 255 if(impl->data.v_string!=0) {free((void*)impl->data.v_string);} 256 257 258 impl->data.v_string = icalmemory_strdup(v); 259 260 if (impl->data.v_string == 0){ 261 errno = ENOMEM; 262 } 263 264 265 icalvalue_reset_kind(impl); 266 } 267 const char* icalvalue_get_string (const icalvalue* value) { 268 269 icalerror_check_arg_rz ((value!=0),"value"); 270 icalerror_check_value_type (value, ICAL_STRING_VALUE); 271 return ((struct icalvalue_impl*)value)->data.v_string; 272 } 273 274 275 276 icalvalue* icalvalue_new_text (const char* v){ 277 struct icalvalue_impl* impl = icalvalue_new_impl(ICAL_TEXT_VALUE); 278 icalerror_check_arg_rz( (v!=0),"v"); 279 280 icalvalue_set_text((icalvalue*)impl,v); 281 return (icalvalue*)impl; 282 } 283 void icalvalue_set_text(icalvalue* value, const char* v) { 284 struct icalvalue_impl* impl; 285 icalerror_check_arg_rv( (value!=0),"value"); 286 icalerror_check_arg_rv( (v!=0),"v"); 287 288 icalerror_check_value_type(value, ICAL_TEXT_VALUE); 289 impl = (struct icalvalue_impl*)value; 290 if(impl->data.v_string!=0) {free((void*)impl->data.v_string);} 291 292 293 impl->data.v_string = icalmemory_strdup(v); 294 295 if (impl->data.v_string == 0){ 296 errno = ENOMEM; 297 } 298 299 300 icalvalue_reset_kind(impl); 301 } 302 const char* icalvalue_get_text (const icalvalue* value) { 303 304 icalerror_check_arg_rz ((value!=0),"value"); 305 icalerror_check_value_type (value, ICAL_TEXT_VALUE); 306 return ((struct icalvalue_impl*)value)->data.v_string; 307 } 308 309 310 311 icalvalue* icalvalue_new_requeststatus (struct icalreqstattype v){ 312 struct icalvalue_impl* impl = icalvalue_new_impl(ICAL_REQUESTSTATUS_VALUE); 313 314 icalvalue_set_requeststatus((icalvalue*)impl,v); 315 return (icalvalue*)impl; 316 } 317 void icalvalue_set_requeststatus(icalvalue* value, struct icalreqstattype v) { 318 struct icalvalue_impl* impl; 319 icalerror_check_arg_rv( (value!=0),"value"); 320 321 icalerror_check_value_type(value, ICAL_REQUESTSTATUS_VALUE); 322 impl = (struct icalvalue_impl*)value; 323 324 325 impl->data.v_requeststatus = v; 326 327 icalvalue_reset_kind(impl); 328 } 329 struct icalreqstattype icalvalue_get_requeststatus (const icalvalue* value) { 330 331 icalerror_check_arg ((value!=0),"value"); 332 icalerror_check_value_type (value, ICAL_REQUESTSTATUS_VALUE); 333 return ((struct icalvalue_impl*)value)->data.v_requeststatus; 334 } 335 336 337 338 icalvalue* icalvalue_new_cmd (enum icalproperty_cmd v){ 339 struct icalvalue_impl* impl = icalvalue_new_impl(ICAL_CMD_VALUE); 340 341 icalvalue_set_cmd((icalvalue*)impl,v); 342 return (icalvalue*)impl; 343 } 344 void icalvalue_set_cmd(icalvalue* value, enum icalproperty_cmd v) { 345 struct icalvalue_impl* impl; 346 icalerror_check_arg_rv( (value!=0),"value"); 347 348 icalerror_check_value_type(value, ICAL_CMD_VALUE); 349 impl = (struct icalvalue_impl*)value; 350 351 352 impl->data.v_enum = v; 353 354 icalvalue_reset_kind(impl); 355 } 356 enum icalproperty_cmd icalvalue_get_cmd (const icalvalue* value) { 357 358 icalerror_check_arg ((value!=0),"value"); 359 icalerror_check_value_type (value, ICAL_CMD_VALUE); 360 return ((struct icalvalue_impl*)value)->data.v_enum; 361 } 362 363 364 365 icalvalue* icalvalue_new_binary (const char* v){ 366 struct icalvalue_impl* impl = icalvalue_new_impl(ICAL_BINARY_VALUE); 367 icalerror_check_arg_rz( (v!=0),"v"); 368 369 icalvalue_set_binary((icalvalue*)impl,v); 370 return (icalvalue*)impl; 371 } 372 void icalvalue_set_binary(icalvalue* value, const char* v) { 373 struct icalvalue_impl* impl; 374 icalerror_check_arg_rv( (value!=0),"value"); 375 icalerror_check_arg_rv( (v!=0),"v"); 376 377 icalerror_check_value_type(value, ICAL_BINARY_VALUE); 378 impl = (struct icalvalue_impl*)value; 379 if(impl->data.v_string!=0) {free((void*)impl->data.v_string);} 380 381 382 impl->data.v_string = icalmemory_strdup(v); 383 384 if (impl->data.v_string == 0){ 385 errno = ENOMEM; 386 } 387 388 389 icalvalue_reset_kind(impl); 390 } 391 const char* icalvalue_get_binary (const icalvalue* value) { 392 393 icalerror_check_arg_rz ((value!=0),"value"); 394 icalerror_check_value_type (value, ICAL_BINARY_VALUE); 395 return ((struct icalvalue_impl*)value)->data.v_string; 396 } 397 398 399 400 icalvalue* icalvalue_new_querylevel (enum icalproperty_querylevel v){ 401 struct icalvalue_impl* impl = icalvalue_new_impl(ICAL_QUERYLEVEL_VALUE); 402 403 icalvalue_set_querylevel((icalvalue*)impl,v); 404 return (icalvalue*)impl; 405 } 406 void icalvalue_set_querylevel(icalvalue* value, enum icalproperty_querylevel v) { 407 struct icalvalue_impl* impl; 408 icalerror_check_arg_rv( (value!=0),"value"); 409 410 icalerror_check_value_type(value, ICAL_QUERYLEVEL_VALUE); 411 impl = (struct icalvalue_impl*)value; 412 413 414 impl->data.v_enum = v; 415 416 icalvalue_reset_kind(impl); 417 } 418 enum icalproperty_querylevel icalvalue_get_querylevel (const icalvalue* value) { 419 420 icalerror_check_arg ((value!=0),"value"); 421 icalerror_check_value_type (value, ICAL_QUERYLEVEL_VALUE); 422 return ((struct icalvalue_impl*)value)->data.v_enum; 423 } 424 425 426 427 icalvalue* icalvalue_new_period (struct icalperiodtype v){ 428 struct icalvalue_impl* impl = icalvalue_new_impl(ICAL_PERIOD_VALUE); 429 430 icalvalue_set_period((icalvalue*)impl,v); 431 return (icalvalue*)impl; 432 } 433 void icalvalue_set_period(icalvalue* value, struct icalperiodtype v) { 434 struct icalvalue_impl* impl; 435 icalerror_check_arg_rv( (value!=0),"value"); 436 437 icalerror_check_value_type(value, ICAL_PERIOD_VALUE); 438 impl = (struct icalvalue_impl*)value; 439 440 441 impl->data.v_period = v; 442 443 icalvalue_reset_kind(impl); 444 } 445 struct icalperiodtype icalvalue_get_period (const icalvalue* value) { 446 447 icalerror_check_arg ((value!=0),"value"); 448 icalerror_check_value_type (value, ICAL_PERIOD_VALUE); 449 return ((struct icalvalue_impl*)value)->data.v_period; 450 } 451 452 453 454 icalvalue* icalvalue_new_float (float v){ 455 struct icalvalue_impl* impl = icalvalue_new_impl(ICAL_FLOAT_VALUE); 456 457 icalvalue_set_float((icalvalue*)impl,v); 458 return (icalvalue*)impl; 459 } 460 void icalvalue_set_float(icalvalue* value, float v) { 461 struct icalvalue_impl* impl; 462 icalerror_check_arg_rv( (value!=0),"value"); 463 464 icalerror_check_value_type(value, ICAL_FLOAT_VALUE); 465 impl = (struct icalvalue_impl*)value; 466 467 468 impl->data.v_float = v; 469 470 icalvalue_reset_kind(impl); 471 } 472 float icalvalue_get_float (const icalvalue* value) { 473 474 icalerror_check_arg ((value!=0),"value"); 475 icalerror_check_value_type (value, ICAL_FLOAT_VALUE); 476 return ((struct icalvalue_impl*)value)->data.v_float; 477 } 478 479 480 481 icalvalue* icalvalue_new_carlevel (enum icalproperty_carlevel v){ 482 struct icalvalue_impl* impl = icalvalue_new_impl(ICAL_CARLEVEL_VALUE); 483 484 icalvalue_set_carlevel((icalvalue*)impl,v); 485 return (icalvalue*)impl; 486 } 487 void icalvalue_set_carlevel(icalvalue* value, enum icalproperty_carlevel v) { 488 struct icalvalue_impl* impl; 489 icalerror_check_arg_rv( (value!=0),"value"); 490 491 icalerror_check_value_type(value, ICAL_CARLEVEL_VALUE); 492 impl = (struct icalvalue_impl*)value; 493 494 495 impl->data.v_enum = v; 496 497 icalvalue_reset_kind(impl); 498 } 499 enum icalproperty_carlevel icalvalue_get_carlevel (const icalvalue* value) { 500 501 icalerror_check_arg ((value!=0),"value"); 502 icalerror_check_value_type (value, ICAL_CARLEVEL_VALUE); 503 return ((struct icalvalue_impl*)value)->data.v_enum; 504 } 505 506 507 508 icalvalue* icalvalue_new_integer (int v){ 509 struct icalvalue_impl* impl = icalvalue_new_impl(ICAL_INTEGER_VALUE); 510 511 icalvalue_set_integer((icalvalue*)impl,v); 512 return (icalvalue*)impl; 513 } 514 void icalvalue_set_integer(icalvalue* value, int v) { 515 struct icalvalue_impl* impl; 516 icalerror_check_arg_rv( (value!=0),"value"); 517 518 icalerror_check_value_type(value, ICAL_INTEGER_VALUE); 519 impl = (struct icalvalue_impl*)value; 520 521 522 impl->data.v_int = v; 523 524 icalvalue_reset_kind(impl); 525 } 526 int icalvalue_get_integer (const icalvalue* value) { 527 528 icalerror_check_arg ((value!=0),"value"); 529 icalerror_check_value_type (value, ICAL_INTEGER_VALUE); 530 return ((struct icalvalue_impl*)value)->data.v_int; 531 } 532 533 534 535 icalvalue* icalvalue_new_class (enum icalproperty_class v){ 536 struct icalvalue_impl* impl = icalvalue_new_impl(ICAL_CLASS_VALUE); 537 538 icalvalue_set_class((icalvalue*)impl,v); 539 return (icalvalue*)impl; 540 } 541 void icalvalue_set_class(icalvalue* value, enum icalproperty_class v) { 542 struct icalvalue_impl* impl; 543 icalerror_check_arg_rv( (value!=0),"value"); 544 545 icalerror_check_value_type(value, ICAL_CLASS_VALUE); 546 impl = (struct icalvalue_impl*)value; 547 548 549 impl->data.v_enum = v; 550 551 icalvalue_reset_kind(impl); 552 } 553 enum icalproperty_class icalvalue_get_class (const icalvalue* value) { 554 555 icalerror_check_arg ((value!=0),"value"); 556 icalerror_check_value_type (value, ICAL_CLASS_VALUE); 557 return ((struct icalvalue_impl*)value)->data.v_enum; 558 } 559 560 561 562 icalvalue* icalvalue_new_uri (const char* v){ 563 struct icalvalue_impl* impl = icalvalue_new_impl(ICAL_URI_VALUE); 564 icalerror_check_arg_rz( (v!=0),"v"); 565 566 icalvalue_set_uri((icalvalue*)impl,v); 567 return (icalvalue*)impl; 568 } 569 void icalvalue_set_uri(icalvalue* value, const char* v) { 570 struct icalvalue_impl* impl; 571 icalerror_check_arg_rv( (value!=0),"value"); 572 icalerror_check_arg_rv( (v!=0),"v"); 573 574 icalerror_check_value_type(value, ICAL_URI_VALUE); 575 impl = (struct icalvalue_impl*)value; 576 if(impl->data.v_string!=0) {free((void*)impl->data.v_string);} 577 578 579 impl->data.v_string = icalmemory_strdup(v); 580 581 if (impl->data.v_string == 0){ 582 errno = ENOMEM; 583 } 584 585 586 icalvalue_reset_kind(impl); 587 } 588 const char* icalvalue_get_uri (const icalvalue* value) { 589 590 icalerror_check_arg_rz ((value!=0),"value"); 591 icalerror_check_value_type (value, ICAL_URI_VALUE); 592 return ((struct icalvalue_impl*)value)->data.v_string; 593 } 594 595 596 597 icalvalue* icalvalue_new_duration (struct icaldurationtype v){ 598 struct icalvalue_impl* impl = icalvalue_new_impl(ICAL_DURATION_VALUE); 599 600 icalvalue_set_duration((icalvalue*)impl,v); 601 return (icalvalue*)impl; 602 } 603 void icalvalue_set_duration(icalvalue* value, struct icaldurationtype v) { 604 struct icalvalue_impl* impl; 605 icalerror_check_arg_rv( (value!=0),"value"); 606 607 icalerror_check_value_type(value, ICAL_DURATION_VALUE); 608 impl = (struct icalvalue_impl*)value; 609 610 611 impl->data.v_duration = v; 612 613 icalvalue_reset_kind(impl); 614 } 615 struct icaldurationtype icalvalue_get_duration (const icalvalue* value) { 616 617 icalerror_check_arg ((value!=0),"value"); 618 icalerror_check_value_type (value, ICAL_DURATION_VALUE); 619 return ((struct icalvalue_impl*)value)->data.v_duration; 620 } 621 622 623 624 icalvalue* icalvalue_new_boolean (int v){ 625 struct icalvalue_impl* impl = icalvalue_new_impl(ICAL_BOOLEAN_VALUE); 626 627 icalvalue_set_boolean((icalvalue*)impl,v); 628 return (icalvalue*)impl; 629 } 630 void icalvalue_set_boolean(icalvalue* value, int v) { 631 struct icalvalue_impl* impl; 632 icalerror_check_arg_rv( (value!=0),"value"); 633 634 icalerror_check_value_type(value, ICAL_BOOLEAN_VALUE); 635 impl = (struct icalvalue_impl*)value; 636 637 638 impl->data.v_int = v; 639 640 icalvalue_reset_kind(impl); 641 } 642 int icalvalue_get_boolean (const icalvalue* value) { 643 644 icalerror_check_arg ((value!=0),"value"); 645 icalerror_check_value_type (value, ICAL_BOOLEAN_VALUE); 646 return ((struct icalvalue_impl*)value)->data.v_int; 647 } 648 649 650 651 icalvalue* icalvalue_new_caladdress (const char* v){ 652 struct icalvalue_impl* impl = icalvalue_new_impl(ICAL_CALADDRESS_VALUE); 653 icalerror_check_arg_rz( (v!=0),"v"); 654 655 icalvalue_set_caladdress((icalvalue*)impl,v); 656 return (icalvalue*)impl; 657 } 658 void icalvalue_set_caladdress(icalvalue* value, const char* v) { 659 struct icalvalue_impl* impl; 660 icalerror_check_arg_rv( (value!=0),"value"); 661 icalerror_check_arg_rv( (v!=0),"v"); 662 663 icalerror_check_value_type(value, ICAL_CALADDRESS_VALUE); 664 impl = (struct icalvalue_impl*)value; 665 if(impl->data.v_string!=0) {free((void*)impl->data.v_string);} 666 667 668 impl->data.v_string = icalmemory_strdup(v); 669 670 if (impl->data.v_string == 0){ 671 errno = ENOMEM; 672 } 673 674 675 icalvalue_reset_kind(impl); 676 } 677 const char* icalvalue_get_caladdress (const icalvalue* value) { 678 679 icalerror_check_arg_rz ((value!=0),"value"); 680 icalerror_check_value_type (value, ICAL_CALADDRESS_VALUE); 681 return ((struct icalvalue_impl*)value)->data.v_string; 682 } 683 684 685 686 icalvalue* icalvalue_new_xlicclass (enum icalproperty_xlicclass v){ 687 struct icalvalue_impl* impl = icalvalue_new_impl(ICAL_XLICCLASS_VALUE); 688 689 icalvalue_set_xlicclass((icalvalue*)impl,v); 690 return (icalvalue*)impl; 691 } 692 void icalvalue_set_xlicclass(icalvalue* value, enum icalproperty_xlicclass v) { 693 struct icalvalue_impl* impl; 694 icalerror_check_arg_rv( (value!=0),"value"); 695 696 icalerror_check_value_type(value, ICAL_XLICCLASS_VALUE); 697 impl = (struct icalvalue_impl*)value; 698 699 700 impl->data.v_enum = v; 701 702 icalvalue_reset_kind(impl); 703 } 704 enum icalproperty_xlicclass icalvalue_get_xlicclass (const icalvalue* value) { 705 706 icalerror_check_arg ((value!=0),"value"); 707 icalerror_check_value_type (value, ICAL_XLICCLASS_VALUE); 708 return ((struct icalvalue_impl*)value)->data.v_enum; 709 } 710 711 712 713 icalvalue* icalvalue_new_action (enum icalproperty_action v){ 714 struct icalvalue_impl* impl = icalvalue_new_impl(ICAL_ACTION_VALUE); 715 716 icalvalue_set_action((icalvalue*)impl,v); 717 return (icalvalue*)impl; 718 } 719 void icalvalue_set_action(icalvalue* value, enum icalproperty_action v) { 720 struct icalvalue_impl* impl; 721 icalerror_check_arg_rv( (value!=0),"value"); 722 723 icalerror_check_value_type(value, ICAL_ACTION_VALUE); 724 impl = (struct icalvalue_impl*)value; 725 726 727 impl->data.v_enum = v; 728 729 icalvalue_reset_kind(impl); 730 } 731 enum icalproperty_action icalvalue_get_action (const icalvalue* value) { 732 733 icalerror_check_arg ((value!=0),"value"); 734 icalerror_check_value_type (value, ICAL_ACTION_VALUE); 735 return ((struct icalvalue_impl*)value)->data.v_enum; 736 } 737 738 739 740 icalvalue* icalvalue_new_datetime (struct icaltimetype v){ 741 struct icalvalue_impl* impl = icalvalue_new_impl(ICAL_DATETIME_VALUE); 742 743 icalvalue_set_datetime((icalvalue*)impl,v); 744 return (icalvalue*)impl; 745 } 746 void icalvalue_set_datetime(icalvalue* value, struct icaltimetype v) { 747 struct icalvalue_impl* impl; 748 icalerror_check_arg_rv( (value!=0),"value"); 749 750 icalerror_check_value_type(value, ICAL_DATETIME_VALUE); 751 impl = (struct icalvalue_impl*)value; 752 753 754 impl->data.v_time = v; 755 756 icalvalue_reset_kind(impl); 757 } 758 struct icaltimetype icalvalue_get_datetime (const icalvalue* value) { 759 760 icalerror_check_arg ((value!=0),"value"); 761 icalerror_check_value_type (value, ICAL_DATETIME_VALUE); 762 return ((struct icalvalue_impl*)value)->data.v_time; 763 } 764 765 766 767 icalvalue* icalvalue_new_utcoffset (int v){ 768 struct icalvalue_impl* impl = icalvalue_new_impl(ICAL_UTCOFFSET_VALUE); 769 770 icalvalue_set_utcoffset((icalvalue*)impl,v); 771 return (icalvalue*)impl; 772 } 773 void icalvalue_set_utcoffset(icalvalue* value, int v) { 774 struct icalvalue_impl* impl; 775 icalerror_check_arg_rv( (value!=0),"value"); 776 777 icalerror_check_value_type(value, ICAL_UTCOFFSET_VALUE); 778 impl = (struct icalvalue_impl*)value; 779 780 781 impl->data.v_int = v; 782 783 icalvalue_reset_kind(impl); 784 } 785 int icalvalue_get_utcoffset (const icalvalue* value) { 786 787 icalerror_check_arg ((value!=0),"value"); 788 icalerror_check_value_type (value, ICAL_UTCOFFSET_VALUE); 789 return ((struct icalvalue_impl*)value)->data.v_int; 790 } 791 792 793 794 icalvalue* icalvalue_new_method (enum icalproperty_method v){ 795 struct icalvalue_impl* impl = icalvalue_new_impl(ICAL_METHOD_VALUE); 796 797 icalvalue_set_method((icalvalue*)impl,v); 798 return (icalvalue*)impl; 799 } 800 void icalvalue_set_method(icalvalue* value, enum icalproperty_method v) { 801 struct icalvalue_impl* impl; 802 icalerror_check_arg_rv( (value!=0),"value"); 803 804 icalerror_check_value_type(value, ICAL_METHOD_VALUE); 805 impl = (struct icalvalue_impl*)value; 806 807 808 impl->data.v_enum = v; 809 810 icalvalue_reset_kind(impl); 811 } 812 enum icalproperty_method icalvalue_get_method (const icalvalue* value) { 813 814 icalerror_check_arg ((value!=0),"value"); 815 icalerror_check_value_type (value, ICAL_METHOD_VALUE); 816 return ((struct icalvalue_impl*)value)->data.v_enum; 817 } 818 819 820 int icalvalue_kind_is_valid(const icalvalue_kind kind) 821 { 822 int i = 0; 823 do { 824 if (value_map[i].kind == kind) 825 return 1; 826 } while (value_map[i++].kind != ICAL_NO_VALUE); 827 828 return 0; 829 } 830 831 const char* icalvalue_kind_to_string(const icalvalue_kind kind) 832 { 833 int i; 834 835 for (i=0; value_map[i].kind != ICAL_NO_VALUE; i++) { 836 if (value_map[i].kind == kind) { 837 return value_map[i].name; 838 } 839 } 840 841 return 0; 842 } 843 844 icalvalue_kind icalvalue_string_to_kind(const char* str) 845 { 846 int i; 847 848 for (i=0; value_map[i].kind != ICAL_NO_VALUE; i++) { 849 if (strcasecmp(value_map[i].name,str) == 0) { 850 return value_map[i].kind; 851 } 852 } 853 854 return value_map[i].kind; 855 856 } 857 858 icalvalue* icalvalue_new_x (const char* v){ 859 struct icalvalue_impl* impl = icalvalue_new_impl(ICAL_X_VALUE); 860 icalerror_check_arg_rz( (v!=0),"v"); 861 862 icalvalue_set_x((icalvalue*)impl,v); 863 return (icalvalue*)impl; 864 } 865 void icalvalue_set_x(icalvalue* impl, const char* v) { 866 icalerror_check_arg_rv( (impl!=0),"value"); 867 icalerror_check_arg_rv( (v!=0),"v"); 868 869 if(impl->x_value!=0) {free((void*)impl->x_value);} 870 871 impl->x_value = icalmemory_strdup(v); 872 873 if (impl->x_value == 0){ 874 errno = ENOMEM; 875 } 876 877 } 878 const char* icalvalue_get_x(const icalvalue* value) { 879 880 icalerror_check_arg( (value!=0),"value"); 881 icalerror_check_value_type(value, ICAL_X_VALUE); 882 return value->x_value; 883 } 884 885 /* Recur is a special case, so it is not auto generated. */ 886 icalvalue* 887 icalvalue_new_recur (struct icalrecurrencetype v) 888 { 889 struct icalvalue_impl* impl = icalvalue_new_impl(ICAL_RECUR_VALUE); 890 891 icalvalue_set_recur((icalvalue*)impl,v); 892 893 return (icalvalue*)impl; 894 } 895 896 void 897 icalvalue_set_recur(icalvalue* impl, struct icalrecurrencetype v) 898 { 899 icalerror_check_arg_rv( (impl!=0),"value"); 900 icalerror_check_value_type(value, ICAL_RECUR_VALUE); 901 902 if (impl->data.v_recur != 0){ 903 free(impl->data.v_recur); 904 impl->data.v_recur = 0; 905 } 906 907 impl->data.v_recur = malloc(sizeof(struct icalrecurrencetype)); 908 909 if (impl->data.v_recur == 0){ 910 icalerror_set_errno(ICAL_NEWFAILED_ERROR); 911 return; 912 } else { 913 memcpy(impl->data.v_recur, &v, sizeof(struct icalrecurrencetype)); 914 } 915 916 } 917 918 struct icalrecurrencetype 919 icalvalue_get_recur(const icalvalue* value) 920 { 921 icalerror_check_arg( (value!=0),"value"); 922 icalerror_check_value_type(value, ICAL_RECUR_VALUE); 923 924 return *(value->data.v_recur); 925 } 926 927 928 929 930 icalvalue* 931 icalvalue_new_trigger (struct icaltriggertype v) 932 { 933 struct icalvalue_impl* impl = icalvalue_new_impl(ICAL_TRIGGER_VALUE); 934 935 icalvalue_set_trigger((icalvalue*)impl,v); 936 937 return (icalvalue*)impl; 938 } 939 940 void 941 icalvalue_set_trigger(icalvalue* value, struct icaltriggertype v) 942 { 943 icalerror_check_arg_rv( (value!=0),"value"); 944 945 if(!icaltime_is_null_time(v.time)){ 946 icalvalue_set_datetime(value,v.time); 947 value->kind = ICAL_DATETIME_VALUE; 948 } else { 949 icalvalue_set_duration(value,v.duration); 950 value->kind = ICAL_DURATION_VALUE; 951 } 952 } 953 954 struct icaltriggertype 955 icalvalue_get_trigger(const icalvalue* impl) 956 { 957 struct icaltriggertype tr; 958 959 icalerror_check_arg( (impl!=0),"value"); 960 icalerror_check_arg( (impl!=0),"value"); 961 962 if(impl->kind == ICAL_DATETIME_VALUE){ 963 tr.duration = icaldurationtype_from_int(0); 964 tr.time = impl->data.v_time; 965 } else if(impl->kind == ICAL_DURATION_VALUE){ 966 tr.time = icaltime_null_time(); 967 tr.duration = impl->data.v_duration; 968 } else { 969 tr.duration = icaldurationtype_from_int(0); 970 tr.time = icaltime_null_time(); 971 icalerror_set_errno(ICAL_BADARG_ERROR); 972 } 973 974 return tr; 975 } 976 977 /* DATE-TIME-PERIOD is a special case, and is not auto generated */ 978 979 icalvalue* 980 icalvalue_new_datetimeperiod (struct icaldatetimeperiodtype v) 981 { 982 struct icalvalue_impl* impl = icalvalue_new_impl(ICAL_DATETIMEPERIOD_VALUE); 983 984 icalvalue_set_datetimeperiod(impl,v); 985 986 return (icalvalue*)impl; 987 } 988 989 void 990 icalvalue_set_datetimeperiod(icalvalue* impl, struct icaldatetimeperiodtype v) 991 { 992 icalerror_check_arg_rv( (impl!=0),"value"); 993 994 icalerror_check_value_type(value, ICAL_DATETIMEPERIOD_VALUE); 995 996 if(!icaltime_is_null_time(v.time)){ 997 if(!icaltime_is_valid_time(v.time)){ 998 icalerror_set_errno(ICAL_BADARG_ERROR); 999 return; 1000 } 1001 impl->kind = ICAL_DATETIME_VALUE; 1002 icalvalue_set_datetime(impl,v.time); 1003 } else if (!icalperiodtype_is_null_period(v.period)) { 1004 if(!icalperiodtype_is_valid_period(v.period)){ 1005 icalerror_set_errno(ICAL_BADARG_ERROR); 1006 return; 1007 } 1008 impl->kind = ICAL_PERIOD_VALUE; 1009 icalvalue_set_period(impl,v.period); 1010 } else { 1011 icalerror_set_errno(ICAL_BADARG_ERROR); 1012 } 1013 } 1014 1015 struct icaldatetimeperiodtype 1016 icalvalue_get_datetimeperiod(const icalvalue* impl) 1017 { 1018 struct icaldatetimeperiodtype dtp; 1019 1020 icalerror_check_arg( (impl!=0),"value"); 1021 icalerror_check_value_type(value, ICAL_DATETIMEPERIOD_VALUE); 1022 1023 if( impl->kind == ICAL_DATETIME_VALUE || impl->kind == ICAL_DATE_VALUE ){ 1024 dtp.period = icalperiodtype_null_period(); 1025 dtp.time = impl->data.v_time; 1026 } else if(impl->kind == ICAL_PERIOD_VALUE) { 1027 dtp.period = impl->data.v_period; 1028 dtp.time = icaltime_null_time(); 1029 } else { 1030 dtp.period = icalperiodtype_null_period(); 1031 dtp.time = icaltime_null_time(); 1032 icalerror_set_errno(ICAL_BADARG_ERROR); 1033 } 1034 1035 return dtp; 1036 } 1037 1038 1039 1040 icalvalue * 1041 icalvalue_new_attach (icalattach *attach) 1042 { 1043 struct icalvalue_impl *impl; 1044 1045 icalerror_check_arg_rz ((attach != NULL), "attach"); 1046 1047 impl = icalvalue_new_impl (ICAL_ATTACH_VALUE); 1048 if (!impl) { 1049 errno = ENOMEM; 1050 return NULL; 1051 } 1052 1053 icalvalue_set_attach ((icalvalue *) impl, attach); 1054 return (icalvalue *) impl; 1055 } 1056 1057 void 1058 icalvalue_set_attach (icalvalue *value, icalattach *attach) 1059 { 1060 struct icalvalue_impl *impl; 1061 1062 icalerror_check_arg_rv ((value != NULL), "value"); 1063 icalerror_check_value_type (value, ICAL_ATTACH_VALUE); 1064 icalerror_check_arg_rv ((attach != NULL), "attach"); 1065 1066 impl = (struct icalvalue_impl *) value; 1067 1068 icalattach_ref (attach); 1069 1070 if (impl->data.v_attach) 1071 icalattach_unref (impl->data.v_attach); 1072 1073 impl->data.v_attach = attach; 1074 } 1075 1076 icalattach * 1077 icalvalue_get_attach (const icalvalue *value) 1078 { 1079 icalerror_check_arg_rz ((value != NULL), "value"); 1080 icalerror_check_value_type (value, ICAL_ATTACH_VALUE); 1081 1082 return value->data.v_attach; 1083 } 1084 1085 1086 1087 1088 1089 1090 1091 /* The remaining interfaces are 'new', 'set' and 'get' for each of the value 1092 types */ 1093 1094 1095 /* Everything below this line is machine generated. Do not edit. */ -
src/libical/icalderivedvalue.h
diff -Nurb libical-0.42.orig/src/libical/icalderivedvalue.h libical-0.42/src/libical/icalderivedvalue.h
old new 1 /* -*- Mode: C -*- */ 2 /*====================================================================== 3 FILE: icalvalue.h 4 CREATOR: eric 20 March 1999 5 6 7 $Id: icalderivedvalue.h.in,v 1.10 2007-04-30 13:57:48 artcancro Exp $ 8 $Locker: $ 9 10 11 12 (C) COPYRIGHT 2000, Eric Busboom, http://www.softwarestudio.org 13 14 This program is free software; you can redistribute it and/or modify 15 it under the terms of either: 16 17 The LGPL as published by the Free Software Foundation, version 18 2.1, available at: http://www.fsf.org/copyleft/lesser.html 19 20 Or: 21 22 The Mozilla Public License Version 1.0. You may obtain a copy of 23 the License at http://www.mozilla.org/MPL/ 24 25 The original code is icalvalue.h 26 27 ======================================================================*/ 28 29 #ifndef ICALDERIVEDVALUE_H 30 #define ICALDERIVEDVALUE_H 31 32 #include "icaltypes.h" 33 #include "icalrecur.h" 34 #include "icaltime.h" 35 #include "icalduration.h" 36 #include "icalperiod.h" 37 #include "icalattach.h" 38 39 typedef struct icalvalue_impl icalvalue; 40 41 42 43 void icalvalue_set_x(icalvalue* value, const char* v); 44 icalvalue* icalvalue_new_x(const char* v); 45 const char* icalvalue_get_x(const icalvalue* value); 46 47 icalvalue* icalvalue_new_recur (struct icalrecurrencetype v); 48 void icalvalue_set_recur(icalvalue* value, struct icalrecurrencetype v); 49 struct icalrecurrencetype icalvalue_get_recur(const icalvalue* value); 50 51 icalvalue* icalvalue_new_trigger (struct icaltriggertype v); 52 void icalvalue_set_trigger(icalvalue* value, struct icaltriggertype v); 53 struct icaltriggertype icalvalue_get_trigger(const icalvalue* value); 54 55 icalvalue* icalvalue_new_datetimeperiod (struct icaldatetimeperiodtype v); 56 void icalvalue_set_datetimeperiod(icalvalue* value, struct icaldatetimeperiodtype v); 57 struct icaldatetimeperiodtype icalvalue_get_datetimeperiod(const icalvalue* value); 58 59 icalvalue *icalvalue_new_attach (icalattach *attach); 60 void icalvalue_set_attach (icalvalue *value, icalattach *attach); 61 icalattach *icalvalue_get_attach (const icalvalue *value); 62 63 void icalvalue_reset_kind(icalvalue* value); 64 65 typedef enum icalvalue_kind { 66 ICAL_ANY_VALUE=5000, 67 ICAL_QUERY_VALUE=5001, 68 ICAL_DATE_VALUE=5002, 69 ICAL_ATTACH_VALUE=5003, 70 ICAL_GEO_VALUE=5004, 71 ICAL_STATUS_VALUE=5005, 72 ICAL_TRANSP_VALUE=5006, 73 ICAL_STRING_VALUE=5007, 74 ICAL_TEXT_VALUE=5008, 75 ICAL_REQUESTSTATUS_VALUE=5009, 76 ICAL_CMD_VALUE=5010, 77 ICAL_BINARY_VALUE=5011, 78 ICAL_QUERYLEVEL_VALUE=5012, 79 ICAL_PERIOD_VALUE=5013, 80 ICAL_FLOAT_VALUE=5014, 81 ICAL_DATETIMEPERIOD_VALUE=5015, 82 ICAL_CARLEVEL_VALUE=5016, 83 ICAL_INTEGER_VALUE=5017, 84 ICAL_CLASS_VALUE=5018, 85 ICAL_URI_VALUE=5019, 86 ICAL_DURATION_VALUE=5020, 87 ICAL_BOOLEAN_VALUE=5021, 88 ICAL_X_VALUE=5022, 89 ICAL_CALADDRESS_VALUE=5023, 90 ICAL_TRIGGER_VALUE=5024, 91 ICAL_XLICCLASS_VALUE=5025, 92 ICAL_RECUR_VALUE=5026, 93 ICAL_ACTION_VALUE=5027, 94 ICAL_DATETIME_VALUE=5028, 95 ICAL_UTCOFFSET_VALUE=5029, 96 ICAL_METHOD_VALUE=5030, 97 ICAL_NO_VALUE=5031 98 } icalvalue_kind ; 99 100 #define ICALPROPERTY_FIRST_ENUM 10000 101 102 typedef enum icalproperty_action { 103 ICAL_ACTION_X = 10000, 104 ICAL_ACTION_AUDIO = 10001, 105 ICAL_ACTION_DISPLAY = 10002, 106 ICAL_ACTION_EMAIL = 10003, 107 ICAL_ACTION_PROCEDURE = 10004, 108 ICAL_ACTION_NONE = 10005 109 } icalproperty_action; 110 111 typedef enum icalproperty_carlevel { 112 ICAL_CARLEVEL_X = 10006, 113 ICAL_CARLEVEL_CARNONE = 10007, 114 ICAL_CARLEVEL_CARMIN = 10008, 115 ICAL_CARLEVEL_CARFULL1 = 10009, 116 ICAL_CARLEVEL_NONE = 10010 117 } icalproperty_carlevel; 118 119 typedef enum icalproperty_class { 120 ICAL_CLASS_X = 10011, 121 ICAL_CLASS_PUBLIC = 10012, 122 ICAL_CLASS_PRIVATE = 10013, 123 ICAL_CLASS_CONFIDENTIAL = 10014, 124 ICAL_CLASS_NONE = 10015 125 } icalproperty_class; 126 127 typedef enum icalproperty_cmd { 128 ICAL_CMD_X = 10016, 129 ICAL_CMD_ABORT = 10017, 130 ICAL_CMD_CONTINUE = 10018, 131 ICAL_CMD_CREATE = 10019, 132 ICAL_CMD_DELETE = 10020, 133 ICAL_CMD_GENERATEUID = 10021, 134 ICAL_CMD_GETCAPABILITY = 10022, 135 ICAL_CMD_IDENTIFY = 10023, 136 ICAL_CMD_MODIFY = 10024, 137 ICAL_CMD_MOVE = 10025, 138 ICAL_CMD_REPLY = 10026, 139 ICAL_CMD_SEARCH = 10027, 140 ICAL_CMD_SETLOCALE = 10028, 141 ICAL_CMD_NONE = 10029 142 } icalproperty_cmd; 143 144 typedef enum icalproperty_method { 145 ICAL_METHOD_X = 10030, 146 ICAL_METHOD_PUBLISH = 10031, 147 ICAL_METHOD_REQUEST = 10032, 148 ICAL_METHOD_REPLY = 10033, 149 ICAL_METHOD_ADD = 10034, 150 ICAL_METHOD_CANCEL = 10035, 151 ICAL_METHOD_REFRESH = 10036, 152 ICAL_METHOD_COUNTER = 10037, 153 ICAL_METHOD_DECLINECOUNTER = 10038, 154 ICAL_METHOD_CREATE = 10039, 155 ICAL_METHOD_READ = 10040, 156 ICAL_METHOD_RESPONSE = 10041, 157 ICAL_METHOD_MOVE = 10042, 158 ICAL_METHOD_MODIFY = 10043, 159 ICAL_METHOD_GENERATEUID = 10044, 160 ICAL_METHOD_DELETE = 10045, 161 ICAL_METHOD_NONE = 10046 162 } icalproperty_method; 163 164 typedef enum icalproperty_querylevel { 165 ICAL_QUERYLEVEL_X = 10047, 166 ICAL_QUERYLEVEL_CALQL1 = 10048, 167 ICAL_QUERYLEVEL_CALQLNONE = 10049, 168 ICAL_QUERYLEVEL_NONE = 10050 169 } icalproperty_querylevel; 170 171 typedef enum icalproperty_status { 172 ICAL_STATUS_X = 10051, 173 ICAL_STATUS_TENTATIVE = 10052, 174 ICAL_STATUS_CONFIRMED = 10053, 175 ICAL_STATUS_COMPLETED = 10054, 176 ICAL_STATUS_NEEDSACTION = 10055, 177 ICAL_STATUS_CANCELLED = 10056, 178 ICAL_STATUS_INPROCESS = 10057, 179 ICAL_STATUS_DRAFT = 10058, 180 ICAL_STATUS_FINAL = 10059, 181 ICAL_STATUS_NONE = 10060 182 } icalproperty_status; 183 184 typedef enum icalproperty_transp { 185 ICAL_TRANSP_X = 10061, 186 ICAL_TRANSP_OPAQUE = 10062, 187 ICAL_TRANSP_OPAQUENOCONFLICT = 10063, 188 ICAL_TRANSP_TRANSPARENT = 10064, 189 ICAL_TRANSP_TRANSPARENTNOCONFLICT = 10065, 190 ICAL_TRANSP_NONE = 10066 191 } icalproperty_transp; 192 193 typedef enum icalproperty_xlicclass { 194 ICAL_XLICCLASS_X = 10067, 195 ICAL_XLICCLASS_PUBLISHNEW = 10068, 196 ICAL_XLICCLASS_PUBLISHUPDATE = 10069, 197 ICAL_XLICCLASS_PUBLISHFREEBUSY = 10070, 198 ICAL_XLICCLASS_REQUESTNEW = 10071, 199 ICAL_XLICCLASS_REQUESTUPDATE = 10072, 200 ICAL_XLICCLASS_REQUESTRESCHEDULE = 10073, 201 ICAL_XLICCLASS_REQUESTDELEGATE = 10074, 202 ICAL_XLICCLASS_REQUESTNEWORGANIZER = 10075, 203 ICAL_XLICCLASS_REQUESTFORWARD = 10076, 204 ICAL_XLICCLASS_REQUESTSTATUS = 10077, 205 ICAL_XLICCLASS_REQUESTFREEBUSY = 10078, 206 ICAL_XLICCLASS_REPLYACCEPT = 10079, 207 ICAL_XLICCLASS_REPLYDECLINE = 10080, 208 ICAL_XLICCLASS_REPLYDELEGATE = 10081, 209 ICAL_XLICCLASS_REPLYCRASHERACCEPT = 10082, 210 ICAL_XLICCLASS_REPLYCRASHERDECLINE = 10083, 211 ICAL_XLICCLASS_ADDINSTANCE = 10084, 212 ICAL_XLICCLASS_CANCELEVENT = 10085, 213 ICAL_XLICCLASS_CANCELINSTANCE = 10086, 214 ICAL_XLICCLASS_CANCELALL = 10087, 215 ICAL_XLICCLASS_REFRESH = 10088, 216 ICAL_XLICCLASS_COUNTER = 10089, 217 ICAL_XLICCLASS_DECLINECOUNTER = 10090, 218 ICAL_XLICCLASS_MALFORMED = 10091, 219 ICAL_XLICCLASS_OBSOLETE = 10092, 220 ICAL_XLICCLASS_MISSEQUENCED = 10093, 221 ICAL_XLICCLASS_UNKNOWN = 10094, 222 ICAL_XLICCLASS_NONE = 10095 223 } icalproperty_xlicclass; 224 225 #define ICALPROPERTY_LAST_ENUM 10096 226 227 228 /* QUERY */ 229 icalvalue* icalvalue_new_query(const char* v); 230 const char* icalvalue_get_query(const icalvalue* value); 231 void icalvalue_set_query(icalvalue* value, const char* v); 232 233 234 /* DATE */ 235 icalvalue* icalvalue_new_date(struct icaltimetype v); 236 struct icaltimetype icalvalue_get_date(const icalvalue* value); 237 void icalvalue_set_date(icalvalue* value, struct icaltimetype v); 238 239 240 /* GEO */ 241 icalvalue* icalvalue_new_geo(struct icalgeotype v); 242 struct icalgeotype icalvalue_get_geo(const icalvalue* value); 243 void icalvalue_set_geo(icalvalue* value, struct icalgeotype v); 244 245 246 /* STATUS */ 247 icalvalue* icalvalue_new_status(enum icalproperty_status v); 248 enum icalproperty_status icalvalue_get_status(const icalvalue* value); 249 void icalvalue_set_status(icalvalue* value, enum icalproperty_status v); 250 251 252 /* TRANSP */ 253 icalvalue* icalvalue_new_transp(enum icalproperty_transp v); 254 enum icalproperty_transp icalvalue_get_transp(const icalvalue* value); 255 void icalvalue_set_transp(icalvalue* value, enum icalproperty_transp v); 256 257 258 /* STRING */ 259 icalvalue* icalvalue_new_string(const char* v); 260 const char* icalvalue_get_string(const icalvalue* value); 261 void icalvalue_set_string(icalvalue* value, const char* v); 262 263 264 /* TEXT */ 265 icalvalue* icalvalue_new_text(const char* v); 266 const char* icalvalue_get_text(const icalvalue* value); 267 void icalvalue_set_text(icalvalue* value, const char* v); 268 269 270 /* REQUEST-STATUS */ 271 icalvalue* icalvalue_new_requeststatus(struct icalreqstattype v); 272 struct icalreqstattype icalvalue_get_requeststatus(const icalvalue* value); 273 void icalvalue_set_requeststatus(icalvalue* value, struct icalreqstattype v); 274 275 276 /* CMD */ 277 icalvalue* icalvalue_new_cmd(enum icalproperty_cmd v); 278 enum icalproperty_cmd icalvalue_get_cmd(const icalvalue* value); 279 void icalvalue_set_cmd(icalvalue* value, enum icalproperty_cmd v); 280 281 282 /* BINARY */ 283 icalvalue* icalvalue_new_binary(const char* v); 284 const char* icalvalue_get_binary(const icalvalue* value); 285 void icalvalue_set_binary(icalvalue* value, const char* v); 286 287 288 /* QUERY-LEVEL */ 289 icalvalue* icalvalue_new_querylevel(enum icalproperty_querylevel v); 290 enum icalproperty_querylevel icalvalue_get_querylevel(const icalvalue* value); 291 void icalvalue_set_querylevel(icalvalue* value, enum icalproperty_querylevel v); 292 293 294 /* PERIOD */ 295 icalvalue* icalvalue_new_period(struct icalperiodtype v); 296 struct icalperiodtype icalvalue_get_period(const icalvalue* value); 297 void icalvalue_set_period(icalvalue* value, struct icalperiodtype v); 298 299 300 /* FLOAT */ 301 icalvalue* icalvalue_new_float(float v); 302 float icalvalue_get_float(const icalvalue* value); 303 void icalvalue_set_float(icalvalue* value, float v); 304 305 306 /* CAR-LEVEL */ 307 icalvalue* icalvalue_new_carlevel(enum icalproperty_carlevel v); 308 enum icalproperty_carlevel icalvalue_get_carlevel(const icalvalue* value); 309 void icalvalue_set_carlevel(icalvalue* value, enum icalproperty_carlevel v); 310 311 312 /* INTEGER */ 313 icalvalue* icalvalue_new_integer(int v); 314 int icalvalue_get_integer(const icalvalue* value); 315 void icalvalue_set_integer(icalvalue* value, int v); 316 317 318 /* CLASS */ 319 icalvalue* icalvalue_new_class(enum icalproperty_class v); 320 enum icalproperty_class icalvalue_get_class(const icalvalue* value); 321 void icalvalue_set_class(icalvalue* value, enum icalproperty_class v); 322 323 324 /* URI */ 325 icalvalue* icalvalue_new_uri(const char* v); 326 const char* icalvalue_get_uri(const icalvalue* value); 327 void icalvalue_set_uri(icalvalue* value, const char* v); 328 329 330 /* DURATION */ 331 icalvalue* icalvalue_new_duration(struct icaldurationtype v); 332 struct icaldurationtype icalvalue_get_duration(const icalvalue* value); 333 void icalvalue_set_duration(icalvalue* value, struct icaldurationtype v); 334 335 336 /* BOOLEAN */ 337 icalvalue* icalvalue_new_boolean(int v); 338 int icalvalue_get_boolean(const icalvalue* value); 339 void icalvalue_set_boolean(icalvalue* value, int v); 340 341 342 /* CAL-ADDRESS */ 343 icalvalue* icalvalue_new_caladdress(const char* v); 344 const char* icalvalue_get_caladdress(const icalvalue* value); 345 void icalvalue_set_caladdress(icalvalue* value, const char* v); 346 347 348 /* X-LIC-CLASS */ 349 icalvalue* icalvalue_new_xlicclass(enum icalproperty_xlicclass v); 350 enum icalproperty_xlicclass icalvalue_get_xlicclass(const icalvalue* value); 351 void icalvalue_set_xlicclass(icalvalue* value, enum icalproperty_xlicclass v); 352 353 354 /* ACTION */ 355 icalvalue* icalvalue_new_action(enum icalproperty_action v); 356 enum icalproperty_action icalvalue_get_action(const icalvalue* value); 357 void icalvalue_set_action(icalvalue* value, enum icalproperty_action v); 358 359 360 /* DATE-TIME */ 361 icalvalue* icalvalue_new_datetime(struct icaltimetype v); 362 struct icaltimetype icalvalue_get_datetime(const icalvalue* value); 363 void icalvalue_set_datetime(icalvalue* value, struct icaltimetype v); 364 365 366 /* UTC-OFFSET */ 367 icalvalue* icalvalue_new_utcoffset(int v); 368 int icalvalue_get_utcoffset(const icalvalue* value); 369 void icalvalue_set_utcoffset(icalvalue* value, int v); 370 371 372 /* METHOD */ 373 icalvalue* icalvalue_new_method(enum icalproperty_method v); 374 enum icalproperty_method icalvalue_get_method(const icalvalue* value); 375 void icalvalue_set_method(icalvalue* value, enum icalproperty_method v); 376 377 #endif /*ICALVALUE_H*/ -
src/libical/ical.h
diff -Nurb libical-0.42.orig/src/libical/ical.h libical-0.42/src/libical/ical.h
old new 1 #ifndef LIBICAL_ICAL_H 2 #define LIBICAL_ICAL_H 3 #ifdef __cplusplus 4 extern "C" { 5 #endif 6 /* 7 $Id$ 8 */ 9 #ifndef ICAL_VERSION_H 10 #define ICAL_VERSION_H 11 12 #define ICAL_PACKAGE "libical" 13 #define ICAL_VERSION "0.42" 14 15 #endif 16 /* -*- Mode: C -*- */ 17 /*====================================================================== 18 FILE: icaltime.h 19 CREATOR: eric 02 June 2000 20 21 22 23 (C) COPYRIGHT 2000, Eric Busboom <eric@softwarestudio.org> 24 http://www.softwarestudio.org 25 26 This program is free software; you can redistribute it and/or modify 27 it under the terms of either: 28 29 The LGPL as published by the Free Software Foundation, version 30 2.1, available at: http://www.fsf.org/copyleft/lesser.html 31 32 Or: 33 34 The Mozilla Public License Version 1.0. You may obtain a copy of 35 the License at http://www.mozilla.org/MPL/ 36 37 The Original Code is eric. The Initial Developer of the Original 38 Code is Eric Busboom 39 40 41 ======================================================================*/ 42 43 /** @file icaltime.h 44 * @brief struct icaltimetype is a pseudo-object that abstracts time 45 * handling. 46 * 47 * It can represent either a DATE or a DATE-TIME (floating, UTC or in a 48 * given timezone), and it keeps track internally of its native timezone. 49 * 50 * The typical usage is to call the correct constructor specifying the 51 * desired timezone. If this is not known until a later time, the 52 * correct behavior is to specify a NULL timezone and call 53 * icaltime_convert_to_zone() at a later time. 54 * 55 * There are several ways to create a new icaltimetype: 56 * 57 * - icaltime_null_time() 58 * - icaltime_null_date() 59 * - icaltime_current_time_with_zone() 60 * - icaltime_today() 61 * - icaltime_from_timet_with_zone(time_t tm, int is_date, 62 * icaltimezone *zone) 63 * - icaltime_from_string_with_zone(const char* str, icaltimezone *zone) 64 * - icaltime_from_day_of_year(int doy, int year) 65 * - icaltime_from_week_number(int week_number, int year) 66 * 67 * italtimetype objects can be converted to different formats: 68 * 69 * - icaltime_as_timet(struct icaltimetype tt) 70 * - icaltime_as_timet_with_zone(struct icaltimetype tt, 71 * icaltimezone *zone) 72 * - icaltime_as_ical_string(struct icaltimetype tt) 73 * 74 * Accessor methods include: 75 * 76 * - icaltime_get_timezone(struct icaltimetype t) 77 * - icaltime_get_tzid(struct icaltimetype t) 78 * - icaltime_set_timezone(struct icaltimetype t, const icaltimezone *zone) 79 * - icaltime_day_of_year(struct icaltimetype t) 80 * - icaltime_day_of_week(struct icaltimetype t) 81 * - icaltime_start_doy_of_week(struct icaltimetype t, int fdow) 82 * - icaltime_week_number(struct icaltimetype t) 83 * 84 * Query methods include: 85 * 86 * - icaltime_is_null_time(struct icaltimetype t) 87 * - icaltime_is_valid_time(struct icaltimetype t) 88 * - icaltime_is_date(struct icaltimetype t) 89 * - icaltime_is_utc(struct icaltimetype t) 90 * - icaltime_is_floating(struct icaltimetype t) 91 * 92 * Modify, compare and utility methods include: 93 * 94 * - icaltime_add(struct icaltimetype t, struct icaldurationtype d) 95 * - icaltime_subtract(struct icaltimetype t1, struct icaltimetype t2) 96 * - icaltime_compare_with_zone(struct icaltimetype a,struct icaltimetype b) 97 * - icaltime_compare(struct icaltimetype a,struct icaltimetype b) 98 * - icaltime_compare_date_only(struct icaltimetype a, 99 * struct icaltimetype b) 100 * - icaltime_adjust(struct icaltimetype *tt, int days, int hours, 101 * int minutes, int seconds); 102 * - icaltime_normalize(struct icaltimetype t); 103 * - icaltime_convert_to_zone(const struct icaltimetype tt, 104 * icaltimezone *zone); 105 */ 106 107 #ifndef ICALTIME_H 108 #define ICALTIME_H 109 110 #include <time.h> 111 112 /* An opaque struct representing a timezone. We declare this here to avoid 113 a circular dependancy. */ 114 #ifndef ICALTIMEZONE_DEFINED 115 #define ICALTIMEZONE_DEFINED 116 typedef struct _icaltimezone icaltimezone; 117 #endif 118 119 /** icaltime_span is returned by icalcomponent_get_span() */ 120 struct icaltime_span { 121 time_t start; /**< in UTC */ 122 time_t end; /**< in UTC */ 123 int is_busy; /**< 1->busy time, 0-> free time */ 124 }; 125 126 typedef struct icaltime_span icaltime_span; 127 128 /* 129 * FIXME 130 * 131 * is_utc is redundant, and might be considered a minor optimization. 132 * It might be deprecated, so you should use icaltime_is_utc() instead. 133 */ 134 struct icaltimetype 135 { 136 int year; /**< Actual year, e.g. 2001. */ 137 int month; /**< 1 (Jan) to 12 (Dec). */ 138 int day; 139 int hour; 140 int minute; 141 int second; 142 143 int is_utc; /**< 1-> time is in UTC timezone */ 144 145 int is_date; /**< 1 -> interpret this as date. */ 146 147 int is_daylight; /**< 1 -> time is in daylight savings time. */ 148 149 const icaltimezone *zone; /**< timezone */ 150 }; 151 152 typedef struct icaltimetype icaltimetype; 153 154 /** Return a null time, which indicates no time has been set. 155 This time represent the beginning of the epoch */ 156 struct icaltimetype icaltime_null_time(void); 157 158 /** Return a null date */ 159 struct icaltimetype icaltime_null_date(void); 160 161 /** Returns the current time in the given timezone, as an icaltimetype. */ 162 struct icaltimetype icaltime_current_time_with_zone(const icaltimezone *zone); 163 164 /** Returns the current day as an icaltimetype, with is_date set. */ 165 struct icaltimetype icaltime_today(void); 166 167 /** Convert seconds past UNIX epoch to a timetype*/ 168 struct icaltimetype icaltime_from_timet(const time_t v, const int is_date); 169 170 /** Convert seconds past UNIX epoch to a timetype, using timezones. */ 171 struct icaltimetype icaltime_from_timet_with_zone(const time_t tm, 172 const int is_date, const icaltimezone *zone); 173 174 /** create a time from an ISO format string */ 175 struct icaltimetype icaltime_from_string(const char* str); 176 177 /** create a time from an ISO format string */ 178 struct icaltimetype icaltime_from_string_with_zone(const char* str, 179 const icaltimezone *zone); 180 181 /** Create a new time, given a day of year and a year. */ 182 struct icaltimetype icaltime_from_day_of_year(const int doy, 183 const int year); 184 185 /** @brief Contructor (TODO). 186 * Create a new time from a weeknumber and a year. */ 187 struct icaltimetype icaltime_from_week_number(const int week_number, 188 const int year); 189 190 /** Return the time as seconds past the UNIX epoch */ 191 time_t icaltime_as_timet(const struct icaltimetype); 192 193 /** Return the time as seconds past the UNIX epoch, using timezones. */ 194 time_t icaltime_as_timet_with_zone(const struct icaltimetype tt, 195 const icaltimezone *zone); 196 197 /** Return a string represention of the time, in RFC2445 format. */ 198 const char* icaltime_as_ical_string(const struct icaltimetype tt); 199 char* icaltime_as_ical_string_r(const struct icaltimetype tt); 200 201 /** @brief Return the timezone */ 202 const icaltimezone *icaltime_get_timezone(const struct icaltimetype t); 203 204 /** @brief Return the tzid, or NULL for a floating time */ 205 const char *icaltime_get_tzid(const struct icaltimetype t); 206 207 /** @brief Set the timezone */ 208 struct icaltimetype icaltime_set_timezone(struct icaltimetype *t, 209 const icaltimezone *zone); 210 211 /** Return the day of the year of the given time */ 212 int icaltime_day_of_year(const struct icaltimetype t); 213 214 /** Return the day of the week of the given time. Sunday is 1 */ 215 int icaltime_day_of_week(const struct icaltimetype t); 216 217 /** Return the day of the year for the Sunday of the week that the 218 given time is within. */ 219 int icaltime_start_doy_of_week(const struct icaltimetype t); 220 221 /** Return the day of the year for the first day of the week that the 222 given time is within. */ 223 int icaltime_start_doy_week(const struct icaltimetype t, int fdow); 224 225 /** Return the week number for the week the given time is within */ 226 int icaltime_week_number(const struct icaltimetype t); 227 228 /** Return true of the time is null. */ 229 int icaltime_is_null_time(const struct icaltimetype t); 230 231 /** Returns false if the time is clearly invalid, but is not null. This 232 is usually the result of creating a new time type buy not clearing 233 it, or setting one of the flags to an illegal value. */ 234 int icaltime_is_valid_time(const struct icaltimetype t); 235 236 /** @brief Returns true if time is of DATE type, false if DATE-TIME */ 237 int icaltime_is_date(const struct icaltimetype t); 238 239 /** @brief Returns true if time is relative to UTC zone */ 240 int icaltime_is_utc(const struct icaltimetype t); 241 242 /** @brief Returns true if time is a floating time */ 243 int icaltime_is_floating(const struct icaltimetype t); 244 245 /** Return -1, 0, or 1 to indicate that a<b, a==b or a>b */ 246 int icaltime_compare_with_zone(const struct icaltimetype a, 247 const struct icaltimetype b); 248 249 /** Return -1, 0, or 1 to indicate that a<b, a==b or a>b */ 250 int icaltime_compare(const struct icaltimetype a, 251 const struct icaltimetype b); 252 253 /** like icaltime_compare, but only use the date parts. */ 254 int icaltime_compare_date_only(const struct icaltimetype a, 255 const struct icaltimetype b); 256 257 /** like icaltime_compare, but only use the date parts. */ 258 int icaltime_compare_date_only_tz(const struct icaltimetype a, 259 const struct icaltimetype b, icaltimezone *tz); 260 261 /** Adds or subtracts a number of days, hours, minutes and seconds. */ 262 void icaltime_adjust(struct icaltimetype *tt, const int days, 263 const int hours, const int minutes, const int seconds); 264 265 /** Normalize the icaltime, so that all fields are within the normal range. */ 266 struct icaltimetype icaltime_normalize(const struct icaltimetype t); 267 268 /** convert tt, of timezone tzid, into a utc time. Does nothing if the 269 time is already UTC. */ 270 struct icaltimetype icaltime_convert_to_zone(const struct icaltimetype tt, 271 icaltimezone *zone); 272 273 /** Return the number of days in the given month */ 274 int icaltime_days_in_month(const int month, const int year); 275 276 /** Return whether you've specified a leapyear or not. */ 277 int icaltime_is_leap_year (const int year); 278 279 /** Return the number of days in this year */ 280 int icaltime_days_in_year (const int year); 281 282 /** @brief calculate an icaltimespan given a start and end time. */ 283 struct icaltime_span icaltime_span_new(struct icaltimetype dtstart, 284 struct icaltimetype dtend, 285 int is_busy); 286 287 /** @brief Returns true if the two spans overlap **/ 288 int icaltime_span_overlaps(icaltime_span *s1, 289 icaltime_span *s2); 290 291 /** @brief Returns true if the span is totally within the containing 292 * span 293 */ 294 int icaltime_span_contains(icaltime_span *s, 295 icaltime_span *container); 296 297 298 #endif /* !ICALTIME_H */ 299 300 301 /* -*- Mode: C -*- */ 302 /*====================================================================== 303 FILE: icalduration.h 304 CREATOR: eric 26 Jan 2001 305 306 307 308 (C) COPYRIGHT 2000, Eric Busboom <eric@softwarestudio.org> 309 http://www.softwarestudio.org 310 311 This program is free software; you can redistribute it and/or modify 312 it under the terms of either: 313 314 The LGPL as published by the Free Software Foundation, version 315 2.1, available at: http://www.fsf.org/copyleft/lesser.html 316 317 Or: 318 319 The Mozilla Public License Version 1.0. You may obtain a copy of 320 the License at http://www.mozilla.org/MPL/ 321 322 The Original Code is eric. The Initial Developer of the Original 323 Code is Eric Busboom 324 325 326 ======================================================================*/ 327 328 #ifndef ICALDURATION_H 329 #define ICALDURATION_H 330 331 332 struct icaldurationtype 333 { 334 int is_neg; 335 unsigned int days; 336 unsigned int weeks; 337 unsigned int hours; 338 unsigned int minutes; 339 unsigned int seconds; 340 }; 341 342 struct icaldurationtype icaldurationtype_from_int(int t); 343 struct icaldurationtype icaldurationtype_from_string(const char*); 344 int icaldurationtype_as_int(struct icaldurationtype duration); 345 char* icaldurationtype_as_ical_string(struct icaldurationtype d); 346 char* icaldurationtype_as_ical_string_r(struct icaldurationtype d); 347 struct icaldurationtype icaldurationtype_null_duration(void); 348 struct icaldurationtype icaldurationtype_bad_duration(void); 349 int icaldurationtype_is_null_duration(struct icaldurationtype d); 350 int icaldurationtype_is_bad_duration(struct icaldurationtype d); 351 352 struct icaltimetype icaltime_add(struct icaltimetype t, 353 struct icaldurationtype d); 354 355 struct icaldurationtype icaltime_subtract(struct icaltimetype t1, 356 struct icaltimetype t2); 357 358 #endif /* !ICALDURATION_H */ 359 360 361 362 /* -*- Mode: C -*- */ 363 /*====================================================================== 364 FILE: icalperiod.h 365 CREATOR: eric 26 Jan 2001 366 367 368 369 (C) COPYRIGHT 2000, Eric Busboom <eric@softwarestudio.org> 370 http://www.softwarestudio.org 371 372 This program is free software; you can redistribute it and/or modify 373 it under the terms of either: 374 375 The LGPL as published by the Free Software Foundation, version 376 2.1, available at: http://www.fsf.org/copyleft/lesser.html 377 378 Or: 379 380 The Mozilla Public License Version 1.0. You may obtain a copy of 381 the License at http://www.mozilla.org/MPL/ 382 383 The Original Code is eric. The Initial Developer of the Original 384 Code is Eric Busboom 385 386 387 ======================================================================*/ 388 389 #ifndef ICALPERIOD_H 390 #define ICALPERIOD_H 391 392 393 struct icalperiodtype 394 { 395 struct icaltimetype start; 396 struct icaltimetype end; 397 struct icaldurationtype duration; 398 }; 399 400 struct icalperiodtype icalperiodtype_from_string (const char* str); 401 402 const char* icalperiodtype_as_ical_string(struct icalperiodtype p); 403 char* icalperiodtype_as_ical_string_r(struct icalperiodtype p); 404 405 struct icalperiodtype icalperiodtype_null_period(void); 406 407 int icalperiodtype_is_null_period(struct icalperiodtype p); 408 409 int icalperiodtype_is_valid_period(struct icalperiodtype p); 410 411 #endif /* !ICALTIME_H */ 412 413 414 415 416 /* -*- Mode: C -*-*/ 417 /*====================================================================== 418 FILE: icalenums.h 419 420 421 422 (C) COPYRIGHT 2000, Eric Busboom <eric@softwarestudio.org> 423 http://www.softwarestudio.org 424 425 This program is free software; you can redistribute it and/or modify 426 it under the terms of either: 427 428 The LGPL as published by the Free Software Foundation, version 429 2.1, available at: http://www.fsf.org/copyleft/lesser.html 430 431 Or: 432 433 The Mozilla Public License Version 1.0. You may obtain a copy of 434 the License at http://www.mozilla.org/MPL/ 435 436 The original code is icalenums.h 437 438 Contributions from: 439 Graham Davison <g.m.davison@computer.org> 440 441 ======================================================================*/ 442 443 #ifndef ICALENUMS_H 444 #define ICALENUMS_H 445 446 447 448 /*********************************************************************** 449 * Component enumerations 450 **********************************************************************/ 451 452 typedef enum icalcomponent_kind { 453 ICAL_NO_COMPONENT, 454 ICAL_ANY_COMPONENT, /* Used to select all components*/ 455 ICAL_XROOT_COMPONENT, 456 ICAL_XATTACH_COMPONENT, /* MIME attached data, returned by parser. */ 457 ICAL_VEVENT_COMPONENT, 458 ICAL_VTODO_COMPONENT, 459 ICAL_VJOURNAL_COMPONENT, 460 ICAL_VCALENDAR_COMPONENT, 461 ICAL_VAGENDA_COMPONENT, 462 ICAL_VFREEBUSY_COMPONENT, 463 ICAL_VALARM_COMPONENT, 464 ICAL_XAUDIOALARM_COMPONENT, 465 ICAL_XDISPLAYALARM_COMPONENT, 466 ICAL_XEMAILALARM_COMPONENT, 467 ICAL_XPROCEDUREALARM_COMPONENT, 468 ICAL_VTIMEZONE_COMPONENT, 469 ICAL_XSTANDARD_COMPONENT, 470 ICAL_XDAYLIGHT_COMPONENT, 471 ICAL_X_COMPONENT, 472 ICAL_VSCHEDULE_COMPONENT, 473 ICAL_VQUERY_COMPONENT, 474 ICAL_VREPLY_COMPONENT, 475 ICAL_VCAR_COMPONENT, 476 ICAL_VCOMMAND_COMPONENT, 477 ICAL_XLICINVALID_COMPONENT, 478 ICAL_XLICMIMEPART_COMPONENT /* a non-stardard component that mirrors 479 structure of MIME data */ 480 481 } icalcomponent_kind; 482 483 484 485 /*********************************************************************** 486 * Request Status codes 487 **********************************************************************/ 488 489 typedef enum icalrequeststatus { 490 ICAL_UNKNOWN_STATUS, 491 ICAL_2_0_SUCCESS_STATUS, 492 ICAL_2_1_FALLBACK_STATUS, 493 ICAL_2_2_IGPROP_STATUS, 494 ICAL_2_3_IGPARAM_STATUS, 495 ICAL_2_4_IGXPROP_STATUS, 496 ICAL_2_5_IGXPARAM_STATUS, 497 ICAL_2_6_IGCOMP_STATUS, 498 ICAL_2_7_FORWARD_STATUS, 499 ICAL_2_8_ONEEVENT_STATUS, 500 ICAL_2_9_TRUNC_STATUS, 501 ICAL_2_10_ONETODO_STATUS, 502 ICAL_2_11_TRUNCRRULE_STATUS, 503 ICAL_3_0_INVPROPNAME_STATUS, 504 ICAL_3_1_INVPROPVAL_STATUS, 505 ICAL_3_2_INVPARAM_STATUS, 506 ICAL_3_3_INVPARAMVAL_STATUS, 507 ICAL_3_4_INVCOMP_STATUS, 508 ICAL_3_5_INVTIME_STATUS, 509 ICAL_3_6_INVRULE_STATUS, 510 ICAL_3_7_INVCU_STATUS, 511 ICAL_3_8_NOAUTH_STATUS, 512 ICAL_3_9_BADVERSION_STATUS, 513 ICAL_3_10_TOOBIG_STATUS, 514 ICAL_3_11_MISSREQCOMP_STATUS, 515 ICAL_3_12_UNKCOMP_STATUS, 516 ICAL_3_13_BADCOMP_STATUS, 517 ICAL_3_14_NOCAP_STATUS, 518 ICAL_3_15_INVCOMMAND, 519 ICAL_4_0_BUSY_STATUS, 520 ICAL_4_1_STORE_ACCESS_DENIED, 521 ICAL_4_2_STORE_FAILED, 522 ICAL_4_3_STORE_NOT_FOUND, 523 ICAL_5_0_MAYBE_STATUS, 524 ICAL_5_1_UNAVAIL_STATUS, 525 ICAL_5_2_NOSERVICE_STATUS, 526 ICAL_5_3_NOSCHED_STATUS, 527 ICAL_6_1_CONTAINER_NOT_FOUND, 528 ICAL_9_0_UNRECOGNIZED_COMMAND 529 } icalrequeststatus; 530 531 532 const char* icalenum_reqstat_desc(icalrequeststatus stat); 533 short icalenum_reqstat_major(icalrequeststatus stat); 534 short icalenum_reqstat_minor(icalrequeststatus stat); 535 icalrequeststatus icalenum_num_to_reqstat(short major, short minor); 536 char* icalenum_reqstat_code(icalrequeststatus stat); 537 char* icalenum_reqstat_code_r(icalrequeststatus stat); 538 539 /*********************************************************************** 540 * Conversion functions 541 **********************************************************************/ 542 543 544 /* Thse routines used to be in icalenums.c, but were moved into the 545 icalproperty, icalparameter, icalvalue, or icalcomponent modules. */ 546 547 /* const char* icalproperty_kind_to_string(icalproperty_kind kind);*/ 548 #define icalenum_property_kind_to_string(x) icalproperty_kind_to_string(x) 549 550 /*icalproperty_kind icalproperty_string_to_kind(const char* string)*/ 551 #define icalenum_string_to_property_kind(x) icalproperty_string_to_kind(x) 552 553 /*icalvalue_kind icalproperty_kind_to_value_kind(icalproperty_kind kind);*/ 554 #define icalenum_property_kind_to_value_kind(x) icalproperty_kind_to_value_kind(x) 555 556 /*const char* icalenum_method_to_string(icalproperty_method);*/ 557 #define icalenum_method_to_string(x) icalproperty_method_to_string(x) 558 559 /*icalproperty_method icalenum_string_to_method(const char* string);*/ 560 #define icalenum_string_to_method(x) icalproperty_string_to_method(x) 561 562 /*const char* icalenum_status_to_string(icalproperty_status);*/ 563 #define icalenum_status_to_string(x) icalproperty_status_to_string(x) 564 565 /*icalproperty_status icalenum_string_to_status(const char* string);*/ 566 #define icalenum_string_to_status(x) icalproperty_string_to_status(x) 567 568 /*icalvalue_kind icalenum_string_to_value_kind(const char* str);*/ 569 #define icalenum_string_to_value_kind(x) icalvalue_string_to_kind(x) 570 571 /*const char* icalenum_value_kind_to_string(icalvalue_kind kind);*/ 572 #define icalenum_value_kind_to_string(x) icalvalue_kind_to_string(x) 573 574 /*const char* icalenum_component_kind_to_string(icalcomponent_kind kind);*/ 575 #define icalenum_component_kind_to_string(x) icalcomponent_kind_to_string(x) 576 577 /*icalcomponent_kind icalenum_string_to_component_kind(const char* string);*/ 578 #define icalenum_string_to_component_kind(x) icalcomponent_string_to_kind(x) 579 580 581 #endif /* !ICALENUMS_H */ 582 583 /* -*- Mode: C -*- */ 584 /*====================================================================== 585 FILE: icaltypes.h 586 CREATOR: eric 20 March 1999 587 588 589 (C) COPYRIGHT 2000, Eric Busboom <eric@softwarestudio.org> 590 http://www.softwarestudio.org 591 592 This program is free software; you can redistribute it and/or modify 593 it under the terms of either: 594 595 The LGPL as published by the Free Software Foundation, version 596 2.1, available at: http://www.fsf.org/copyleft/lesser.html 597 598 Or: 599 600 The Mozilla Public License Version 1.0. You may obtain a copy of 601 the License at http://www.mozilla.org/MPL/ 602 603 The original code is icaltypes.h 604 605 ======================================================================*/ 606 607 #ifndef ICALTYPES_H 608 #define ICALTYPES_H 609 610 #include <time.h> 611 612 613 struct icalgeotype 614 { 615 float lat; 616 float lon; 617 }; 618 619 620 struct icaldatetimeperiodtype 621 { 622 struct icaltimetype time; 623 struct icalperiodtype period; 624 }; 625 626 627 struct icaltriggertype 628 { 629 struct icaltimetype time; 630 struct icaldurationtype duration; 631 }; 632 633 struct icaltriggertype icaltriggertype_from_int(const int reltime); 634 struct icaltriggertype icaltriggertype_from_string(const char* str); 635 636 int icaltriggertype_is_null_trigger(struct icaltriggertype tr); 637 int icaltriggertype_is_bad_trigger(struct icaltriggertype tr); 638 639 /* struct icalreqstattype. This struct contains two string pointers, 640 but don't try to free either of them. The "desc" string is a pointer 641 to a static table inside the library. Don't try to free it. The 642 "debug" string is a pointer into the string that the called passed 643 into to icalreqstattype_from_string. Don't try to free it either, and 644 don't use it after the original string has been freed. 645 646 BTW, you would get that original string from 647 *icalproperty_get_requeststatus() or icalvalue_get_text(), when 648 operating on a the value of a request_status property. */ 649 650 struct icalreqstattype { 651 652 icalrequeststatus code; 653 const char* desc; 654 const char* debug; 655 }; 656 657 struct icalreqstattype icalreqstattype_from_string(const char* str); 658 const char* icalreqstattype_as_string(struct icalreqstattype); 659 char* icalreqstattype_as_string_r(struct icalreqstattype); 660 661 662 663 struct icaltimezonephase { 664 const char* tzname; 665 int is_stdandard; /* 1 = standard tme, 0 = daylight savings time */ 666 struct icaltimetype dtstart; 667 int offsetto; 668 int tzoffsetfrom; 669 const char* comment; 670 struct icaldatetimeperiodtype rdate; 671 const char* rrule; 672 }; 673 674 675 struct icaltimezonetype { 676 const char* tzid; 677 struct icaltimetype last_mod; 678 const char* tzurl; 679 680 /* Array of phases. The end of the array is a phase with tzname == 0 */ 681 struct icaltimezonephase *phases; 682 }; 683 684 void icaltimezonetype_free(struct icaltimezonetype tzt); 685 686 687 #endif /* !ICALTYPES_H */ 688 /* -*- Mode: C -*- */ 689 /*====================================================================== 690 FILE: icalrecur.h 691 CREATOR: eric 20 March 2000 692 693 694 (C) COPYRIGHT 2000, Eric Busboom <eric@softwarestudio.org> 695 http://www.softwarestudio.org 696 697 This program is free software; you can redistribute it and/or modify 698 it under the terms of either: 699 700 The LGPL as published by the Free Software Foundation, version 701 2.1, available at: http://www.fsf.org/copyleft/lesser.html 702 703 Or: 704 705 The Mozilla Public License Version 1.0. You may obtain a copy of 706 the License at http://www.mozilla.org/MPL/ 707 */ 708 709 /** 710 @file icalrecur.h 711 @brief Routines for dealing with recurring time 712 713 How to use: 714 715 1) Get a rule and a start time from a component 716 717 @code 718 icalproperty rrule; 719 struct icalrecurrencetype recur; 720 struct icaltimetype dtstart; 721 722 rrule = icalcomponent_get_first_property(comp,ICAL_RRULE_PROPERTY); 723 recur = icalproperty_get_rrule(rrule); 724 start = icalproperty_get_dtstart(dtstart); 725 @endcode 726 727 Or, just make them up: 728 729 @code 730 recur = icalrecurrencetype_from_string("FREQ=YEARLY;BYDAY=SU,WE"); 731 dtstart = icaltime_from_string("19970101T123000") 732 @endcode 733 734 2) Create an iterator 735 736 @code 737 icalrecur_iterator* ritr; 738 ritr = icalrecur_iterator_new(recur,start); 739 @endcode 740 741 3) Iterator over the occurrences 742 743 @code 744 struct icaltimetype next; 745 while (next = icalrecur_iterator_next(ritr) 746 && !icaltime_is_null_time(next){ 747 Do something with next 748 } 749 @endcode 750 751 Note that that the time returned by icalrecur_iterator_next is in 752 whatever timezone that dtstart is in. 753 754 */ 755 756 #ifndef ICALRECUR_H 757 #define ICALRECUR_H 758 759 #include <time.h> 760 761 /* 762 * Recurrance enumerations 763 */ 764 765 typedef enum icalrecurrencetype_frequency 766 { 767 /* These enums are used to index an array, so don't change the 768 order or the integers */ 769 770 ICAL_SECONDLY_RECURRENCE=0, 771 ICAL_MINUTELY_RECURRENCE=1, 772 ICAL_HOURLY_RECURRENCE=2, 773 ICAL_DAILY_RECURRENCE=3, 774 ICAL_WEEKLY_RECURRENCE=4, 775 ICAL_MONTHLY_RECURRENCE=5, 776 ICAL_YEARLY_RECURRENCE=6, 777 ICAL_NO_RECURRENCE=7 778 779 } icalrecurrencetype_frequency; 780 781 typedef enum icalrecurrencetype_weekday 782 { 783 ICAL_NO_WEEKDAY, 784 ICAL_SUNDAY_WEEKDAY, 785 ICAL_MONDAY_WEEKDAY, 786 ICAL_TUESDAY_WEEKDAY, 787 ICAL_WEDNESDAY_WEEKDAY, 788 ICAL_THURSDAY_WEEKDAY, 789 ICAL_FRIDAY_WEEKDAY, 790 ICAL_SATURDAY_WEEKDAY 791 } icalrecurrencetype_weekday; 792 793 enum { 794 ICAL_RECURRENCE_ARRAY_MAX = 0x7f7f, 795 ICAL_RECURRENCE_ARRAY_MAX_BYTE = 0x7f 796 }; 797 798 799 800 /** 801 * Recurrence type routines 802 */ 803 804 /* See RFC 2445 Section 4.3.10, RECUR Value, for an explaination of 805 the values and fields in struct icalrecurrencetype */ 806 807 #define ICAL_BY_SECOND_SIZE 61 808 #define ICAL_BY_MINUTE_SIZE 61 809 #define ICAL_BY_HOUR_SIZE 25 810 #define ICAL_BY_DAY_SIZE 364 /* 7 days * 52 weeks */ 811 #define ICAL_BY_MONTHDAY_SIZE 32 812 #define ICAL_BY_YEARDAY_SIZE 367 813 #define ICAL_BY_WEEKNO_SIZE 54 814 #define ICAL_BY_MONTH_SIZE 13 815 #define ICAL_BY_SETPOS_SIZE 367 816 817 /** Main struct for holding digested recurrence rules */ 818 struct icalrecurrencetype 819 { 820 icalrecurrencetype_frequency freq; 821 822 823 /* until and count are mutually exclusive. */ 824 struct icaltimetype until; 825 int count; 826 827 short interval; 828 829 icalrecurrencetype_weekday week_start; 830 831 /* The BY* parameters can each take a list of values. Here I 832 * assume that the list of values will not be larger than the 833 * range of the value -- that is, the client will not name a 834 * value more than once. 835 836 * Each of the lists is terminated with the value 837 * ICAL_RECURRENCE_ARRAY_MAX unless the the list is full. 838 */ 839 840 short by_second[ICAL_BY_SECOND_SIZE]; 841 short by_minute[ICAL_BY_MINUTE_SIZE]; 842 short by_hour[ICAL_BY_HOUR_SIZE]; 843 short by_day[ICAL_BY_DAY_SIZE]; /* Encoded value, see below */ 844 short by_month_day[ICAL_BY_MONTHDAY_SIZE]; 845 short by_year_day[ ICAL_BY_YEARDAY_SIZE]; 846 short by_week_no[ICAL_BY_WEEKNO_SIZE]; 847 short by_month[ICAL_BY_MONTH_SIZE]; 848 short by_set_pos[ICAL_BY_SETPOS_SIZE]; 849 }; 850 851 852 void icalrecurrencetype_clear(struct icalrecurrencetype *r); 853 854 /** 855 * Array Encoding 856 * 857 * The 'day' element of the by_day array is encoded to allow 858 * representation of both the day of the week ( Monday, Tueday), but also 859 * the Nth day of the week ( First tuesday of the month, last thursday of 860 * the year) These routines decode the day values 861 */ 862 863 /** 1 == Monday, etc. */ 864 enum icalrecurrencetype_weekday icalrecurrencetype_day_day_of_week(short day); 865 866 /** 0 == any of day of week. 1 == first, 2 = second, -2 == second to last, etc */ 867 int icalrecurrencetype_day_position(short day); 868 869 icalrecurrencetype_weekday icalrecur_string_to_weekday(const char* str); 870 871 /** Recurrance rule parser */ 872 873 /** Convert between strings and recurrencetype structures. */ 874 struct icalrecurrencetype icalrecurrencetype_from_string(const char* str); 875 char* icalrecurrencetype_as_string(struct icalrecurrencetype *recur); 876 char* icalrecurrencetype_as_string_r(struct icalrecurrencetype *recur); 877 878 879 /** Recurrence iteration routines */ 880 881 typedef struct icalrecur_iterator_impl icalrecur_iterator; 882 883 /** Create a new recurrence rule iterator */ 884 icalrecur_iterator* icalrecur_iterator_new(struct icalrecurrencetype rule, 885 struct icaltimetype dtstart); 886 887 /** Get the next occurrence from an iterator */ 888 struct icaltimetype icalrecur_iterator_next(icalrecur_iterator*); 889 890 void icalrecur_iterator_decrement_count(icalrecur_iterator*); 891 892 /** Free the iterator */ 893 void icalrecur_iterator_free(icalrecur_iterator*); 894 895 /** 896 * Fills array up with at most 'count' time_t values, each 897 * representing an occurrence time in seconds past the POSIX epoch 898 */ 899 int icalrecur_expand_recurrence(char* rule, time_t start, 900 int count, time_t* array); 901 902 903 #endif 904 /* -*- Mode: C -*- */ 905 /*====================================================================== 906 FILE: icalattach.h 907 CREATOR: acampi 28 May 02 908 909 910 (C) COPYRIGHT 2002, Andrea Campi <a.campi@inet.it> 911 912 This program is free software; you can redistribute it and/or modify 913 it under the terms of either: 914 915 The LGPL as published by the Free Software Foundation, version 916 2.1, available at: http://www.fsf.org/copyleft/lesser.html 917 918 Or: 919 920 The Mozilla Public License Version 1.0. You may obtain a copy of 921 the License at http://www.mozilla.org/MPL/ 922 923 The original code is icalattach.h 924 925 ======================================================================*/ 926 927 #ifndef ICALATTACH_H 928 #define ICALATTACH_H 929 930 931 typedef struct icalattach_impl icalattach; 932 933 typedef void (* icalattach_free_fn_t) (unsigned char *data, void *user_data); 934 935 icalattach *icalattach_new_from_url (const char *url); 936 icalattach *icalattach_new_from_data (unsigned char *data, 937 icalattach_free_fn_t free_fn, void *free_fn_data); 938 939 void icalattach_ref (icalattach *attach); 940 void icalattach_unref (icalattach *attach); 941 942 int icalattach_get_is_url (icalattach *attach); 943 const char *icalattach_get_url (icalattach *attach); 944 unsigned char *icalattach_get_data (icalattach *attach); 945 946 struct icalattachtype* icalattachtype_new(void); 947 void icalattachtype_add_reference(struct icalattachtype* v); 948 void icalattachtype_free(struct icalattachtype* v); 949 950 void icalattachtype_set_url(struct icalattachtype* v, char* url); 951 char* icalattachtype_get_url(struct icalattachtype* v); 952 953 void icalattachtype_set_base64(struct icalattachtype* v, char* base64, 954 int owns); 955 char* icalattachtype_get_base64(struct icalattachtype* v); 956 957 void icalattachtype_set_binary(struct icalattachtype* v, char* binary, 958 int owns); 959 void* icalattachtype_get_binary(struct icalattachtype* v); 960 961 962 963 #endif /* !ICALATTACH_H */ 964 /* -*- Mode: C -*- */ 965 /*====================================================================== 966 FILE: icalvalue.h 967 CREATOR: eric 20 March 1999 968 969 970 971 972 973 (C) COPYRIGHT 2000, Eric Busboom, http://www.softwarestudio.org 974 975 This program is free software; you can redistribute it and/or modify 976 it under the terms of either: 977 978 The LGPL as published by the Free Software Foundation, version 979 2.1, available at: http://www.fsf.org/copyleft/lesser.html 980 981 Or: 982 983 The Mozilla Public License Version 1.0. You may obtain a copy of 984 the License at http://www.mozilla.org/MPL/ 985 986 The original code is icalvalue.h 987 988 ======================================================================*/ 989 990 #ifndef ICALDERIVEDVALUE_H 991 #define ICALDERIVEDVALUE_H 992 993 994 typedef struct icalvalue_impl icalvalue; 995 996 997 998 void icalvalue_set_x(icalvalue* value, const char* v); 999 icalvalue* icalvalue_new_x(const char* v); 1000 const char* icalvalue_get_x(const icalvalue* value); 1001 1002 icalvalue* icalvalue_new_recur (struct icalrecurrencetype v); 1003 void icalvalue_set_recur(icalvalue* value, struct icalrecurrencetype v); 1004 struct icalrecurrencetype icalvalue_get_recur(const icalvalue* value); 1005 1006 icalvalue* icalvalue_new_trigger (struct icaltriggertype v); 1007 void icalvalue_set_trigger(icalvalue* value, struct icaltriggertype v); 1008 struct icaltriggertype icalvalue_get_trigger(const icalvalue* value); 1009 1010 icalvalue* icalvalue_new_datetimeperiod (struct icaldatetimeperiodtype v); 1011 void icalvalue_set_datetimeperiod(icalvalue* value, struct icaldatetimeperiodtype v); 1012 struct icaldatetimeperiodtype icalvalue_get_datetimeperiod(const icalvalue* value); 1013 1014 icalvalue *icalvalue_new_attach (icalattach *attach); 1015 void icalvalue_set_attach (icalvalue *value, icalattach *attach); 1016 icalattach *icalvalue_get_attach (const icalvalue *value); 1017 1018 void icalvalue_reset_kind(icalvalue* value); 1019 1020 typedef enum icalvalue_kind { 1021 ICAL_ANY_VALUE=5000, 1022 ICAL_QUERY_VALUE=5001, 1023 ICAL_DATE_VALUE=5002, 1024 ICAL_ATTACH_VALUE=5003, 1025 ICAL_GEO_VALUE=5004, 1026 ICAL_STATUS_VALUE=5005, 1027 ICAL_TRANSP_VALUE=5006, 1028 ICAL_STRING_VALUE=5007, 1029 ICAL_TEXT_VALUE=5008, 1030 ICAL_REQUESTSTATUS_VALUE=5009, 1031 ICAL_CMD_VALUE=5010, 1032 ICAL_BINARY_VALUE=5011, 1033 ICAL_QUERYLEVEL_VALUE=5012, 1034 ICAL_PERIOD_VALUE=5013, 1035 ICAL_FLOAT_VALUE=5014, 1036 ICAL_DATETIMEPERIOD_VALUE=5015, 1037 ICAL_CARLEVEL_VALUE=5016, 1038 ICAL_INTEGER_VALUE=5017, 1039 ICAL_CLASS_VALUE=5018, 1040 ICAL_URI_VALUE=5019, 1041 ICAL_DURATION_VALUE=5020, 1042 ICAL_BOOLEAN_VALUE=5021, 1043 ICAL_X_VALUE=5022, 1044 ICAL_CALADDRESS_VALUE=5023, 1045 ICAL_TRIGGER_VALUE=5024, 1046 ICAL_XLICCLASS_VALUE=5025, 1047 ICAL_RECUR_VALUE=5026, 1048 ICAL_ACTION_VALUE=5027, 1049 ICAL_DATETIME_VALUE=5028, 1050 ICAL_UTCOFFSET_VALUE=5029, 1051 ICAL_METHOD_VALUE=5030, 1052 ICAL_NO_VALUE=5031 1053 } icalvalue_kind ; 1054 1055 #define ICALPROPERTY_FIRST_ENUM 10000 1056 1057 typedef enum icalproperty_action { 1058 ICAL_ACTION_X = 10000, 1059 ICAL_ACTION_AUDIO = 10001, 1060 ICAL_ACTION_DISPLAY = 10002, 1061 ICAL_ACTION_EMAIL = 10003, 1062 ICAL_ACTION_PROCEDURE = 10004, 1063 ICAL_ACTION_NONE = 10005 1064 } icalproperty_action; 1065 1066 typedef enum icalproperty_carlevel { 1067 ICAL_CARLEVEL_X = 10006, 1068 ICAL_CARLEVEL_CARNONE = 10007, 1069 ICAL_CARLEVEL_CARMIN = 10008, 1070 ICAL_CARLEVEL_CARFULL1 = 10009, 1071 ICAL_CARLEVEL_NONE = 10010 1072 } icalproperty_carlevel; 1073 1074 typedef enum icalproperty_class { 1075 ICAL_CLASS_X = 10011, 1076 ICAL_CLASS_PUBLIC = 10012, 1077 ICAL_CLASS_PRIVATE = 10013, 1078 ICAL_CLASS_CONFIDENTIAL = 10014, 1079 ICAL_CLASS_NONE = 10015 1080 } icalproperty_class; 1081 1082 typedef enum icalproperty_cmd { 1083 ICAL_CMD_X = 10016, 1084 ICAL_CMD_ABORT = 10017, 1085 ICAL_CMD_CONTINUE = 10018, 1086 ICAL_CMD_CREATE = 10019, 1087 ICAL_CMD_DELETE = 10020, 1088 ICAL_CMD_GENERATEUID = 10021, 1089 ICAL_CMD_GETCAPABILITY = 10022, 1090 ICAL_CMD_IDENTIFY = 10023, 1091 ICAL_CMD_MODIFY = 10024, 1092 ICAL_CMD_MOVE = 10025, 1093 ICAL_CMD_REPLY = 10026, 1094 ICAL_CMD_SEARCH = 10027, 1095 ICAL_CMD_SETLOCALE = 10028, 1096 ICAL_CMD_NONE = 10029 1097 } icalproperty_cmd; 1098 1099 typedef enum icalproperty_method { 1100 ICAL_METHOD_X = 10030, 1101 ICAL_METHOD_PUBLISH = 10031, 1102 ICAL_METHOD_REQUEST = 10032, 1103 ICAL_METHOD_REPLY = 10033, 1104 ICAL_METHOD_ADD = 10034, 1105 ICAL_METHOD_CANCEL = 10035, 1106 ICAL_METHOD_REFRESH = 10036, 1107 ICAL_METHOD_COUNTER = 10037, 1108 ICAL_METHOD_DECLINECOUNTER = 10038, 1109 ICAL_METHOD_CREATE = 10039, 1110 ICAL_METHOD_READ = 10040, 1111 ICAL_METHOD_RESPONSE = 10041, 1112 ICAL_METHOD_MOVE = 10042, 1113 ICAL_METHOD_MODIFY = 10043, 1114 ICAL_METHOD_GENERATEUID = 10044, 1115 ICAL_METHOD_DELETE = 10045, 1116 ICAL_METHOD_NONE = 10046 1117 } icalproperty_method; 1118 1119 typedef enum icalproperty_querylevel { 1120 ICAL_QUERYLEVEL_X = 10047, 1121 ICAL_QUERYLEVEL_CALQL1 = 10048, 1122 ICAL_QUERYLEVEL_CALQLNONE = 10049, 1123 ICAL_QUERYLEVEL_NONE = 10050 1124 } icalproperty_querylevel; 1125 1126 typedef enum icalproperty_status { 1127 ICAL_STATUS_X = 10051, 1128 ICAL_STATUS_TENTATIVE = 10052, 1129 ICAL_STATUS_CONFIRMED = 10053, 1130 ICAL_STATUS_COMPLETED = 10054, 1131 ICAL_STATUS_NEEDSACTION = 10055, 1132 ICAL_STATUS_CANCELLED = 10056, 1133 ICAL_STATUS_INPROCESS = 10057, 1134 ICAL_STATUS_DRAFT = 10058, 1135 ICAL_STATUS_FINAL = 10059, 1136 ICAL_STATUS_NONE = 10060 1137 } icalproperty_status; 1138 1139 typedef enum icalproperty_transp { 1140 ICAL_TRANSP_X = 10061, 1141 ICAL_TRANSP_OPAQUE = 10062, 1142 ICAL_TRANSP_OPAQUENOCONFLICT = 10063, 1143 ICAL_TRANSP_TRANSPARENT = 10064, 1144 ICAL_TRANSP_TRANSPARENTNOCONFLICT = 10065, 1145 ICAL_TRANSP_NONE = 10066 1146 } icalproperty_transp; 1147 1148 typedef enum icalproperty_xlicclass { 1149 ICAL_XLICCLASS_X = 10067, 1150 ICAL_XLICCLASS_PUBLISHNEW = 10068, 1151 ICAL_XLICCLASS_PUBLISHUPDATE = 10069, 1152 ICAL_XLICCLASS_PUBLISHFREEBUSY = 10070, 1153 ICAL_XLICCLASS_REQUESTNEW = 10071, 1154 ICAL_XLICCLASS_REQUESTUPDATE = 10072, 1155 ICAL_XLICCLASS_REQUESTRESCHEDULE = 10073, 1156 ICAL_XLICCLASS_REQUESTDELEGATE = 10074, 1157 ICAL_XLICCLASS_REQUESTNEWORGANIZER = 10075, 1158 ICAL_XLICCLASS_REQUESTFORWARD = 10076, 1159 ICAL_XLICCLASS_REQUESTSTATUS = 10077, 1160 ICAL_XLICCLASS_REQUESTFREEBUSY = 10078, 1161 ICAL_XLICCLASS_REPLYACCEPT = 10079, 1162 ICAL_XLICCLASS_REPLYDECLINE = 10080, 1163 ICAL_XLICCLASS_REPLYDELEGATE = 10081, 1164 ICAL_XLICCLASS_REPLYCRASHERACCEPT = 10082, 1165 ICAL_XLICCLASS_REPLYCRASHERDECLINE = 10083, 1166 ICAL_XLICCLASS_ADDINSTANCE = 10084, 1167 ICAL_XLICCLASS_CANCELEVENT = 10085, 1168 ICAL_XLICCLASS_CANCELINSTANCE = 10086, 1169 ICAL_XLICCLASS_CANCELALL = 10087, 1170 ICAL_XLICCLASS_REFRESH = 10088, 1171 ICAL_XLICCLASS_COUNTER = 10089, 1172 ICAL_XLICCLASS_DECLINECOUNTER = 10090, 1173 ICAL_XLICCLASS_MALFORMED = 10091, 1174 ICAL_XLICCLASS_OBSOLETE = 10092, 1175 ICAL_XLICCLASS_MISSEQUENCED = 10093, 1176 ICAL_XLICCLASS_UNKNOWN = 10094, 1177 ICAL_XLICCLASS_NONE = 10095 1178 } icalproperty_xlicclass; 1179 1180 #define ICALPROPERTY_LAST_ENUM 10096 1181 1182 1183 /* QUERY */ 1184 icalvalue* icalvalue_new_query(const char* v); 1185 const char* icalvalue_get_query(const icalvalue* value); 1186 void icalvalue_set_query(icalvalue* value, const char* v); 1187 1188 1189 /* DATE */ 1190 icalvalue* icalvalue_new_date(struct icaltimetype v); 1191 struct icaltimetype icalvalue_get_date(const icalvalue* value); 1192 void icalvalue_set_date(icalvalue* value, struct icaltimetype v); 1193 1194 1195 /* GEO */ 1196 icalvalue* icalvalue_new_geo(struct icalgeotype v); 1197 struct icalgeotype icalvalue_get_geo(const icalvalue* value); 1198 void icalvalue_set_geo(icalvalue* value, struct icalgeotype v); 1199 1200 1201 /* STATUS */ 1202 icalvalue* icalvalue_new_status(enum icalproperty_status v); 1203 enum icalproperty_status icalvalue_get_status(const icalvalue* value); 1204 void icalvalue_set_status(icalvalue* value, enum icalproperty_status v); 1205 1206 1207 /* TRANSP */ 1208 icalvalue* icalvalue_new_transp(enum icalproperty_transp v); 1209 enum icalproperty_transp icalvalue_get_transp(const icalvalue* value); 1210 void icalvalue_set_transp(icalvalue* value, enum icalproperty_transp v); 1211 1212 1213 /* STRING */ 1214 icalvalue* icalvalue_new_string(const char* v); 1215 const char* icalvalue_get_string(const icalvalue* value); 1216 void icalvalue_set_string(icalvalue* value, const char* v); 1217 1218 1219 /* TEXT */ 1220 icalvalue* icalvalue_new_text(const char* v); 1221 const char* icalvalue_get_text(const icalvalue* value); 1222 void icalvalue_set_text(icalvalue* value, const char* v); 1223 1224 1225 /* REQUEST-STATUS */ 1226 icalvalue* icalvalue_new_requeststatus(struct icalreqstattype v); 1227 struct icalreqstattype icalvalue_get_requeststatus(const icalvalue* value); 1228 void icalvalue_set_requeststatus(icalvalue* value, struct icalreqstattype v); 1229 1230 1231 /* CMD */ 1232 icalvalue* icalvalue_new_cmd(enum icalproperty_cmd v); 1233 enum icalproperty_cmd icalvalue_get_cmd(const icalvalue* value); 1234 void icalvalue_set_cmd(icalvalue* value, enum icalproperty_cmd v); 1235 1236 1237 /* BINARY */ 1238 icalvalue* icalvalue_new_binary(const char* v); 1239 const char* icalvalue_get_binary(const icalvalue* value); 1240 void icalvalue_set_binary(icalvalue* value, const char* v); 1241 1242 1243 /* QUERY-LEVEL */ 1244 icalvalue* icalvalue_new_querylevel(enum icalproperty_querylevel v); 1245 enum icalproperty_querylevel icalvalue_get_querylevel(const icalvalue* value); 1246 void icalvalue_set_querylevel(icalvalue* value, enum icalproperty_querylevel v); 1247 1248 1249 /* PERIOD */ 1250 icalvalue* icalvalue_new_period(struct icalperiodtype v); 1251 struct icalperiodtype icalvalue_get_period(const icalvalue* value); 1252 void icalvalue_set_period(icalvalue* value, struct icalperiodtype v); 1253 1254 1255 /* FLOAT */ 1256 icalvalue* icalvalue_new_float(float v); 1257 float icalvalue_get_float(const icalvalue* value); 1258 void icalvalue_set_float(icalvalue* value, float v); 1259 1260 1261 /* CAR-LEVEL */ 1262 icalvalue* icalvalue_new_carlevel(enum icalproperty_carlevel v); 1263 enum icalproperty_carlevel icalvalue_get_carlevel(const icalvalue* value); 1264 void icalvalue_set_carlevel(icalvalue* value, enum icalproperty_carlevel v); 1265 1266 1267 /* INTEGER */ 1268 icalvalue* icalvalue_new_integer(int v); 1269 int icalvalue_get_integer(const icalvalue* value); 1270 void icalvalue_set_integer(icalvalue* value, int v); 1271 1272 1273 /* CLASS */ 1274 icalvalue* icalvalue_new_class(enum icalproperty_class v); 1275 enum icalproperty_class icalvalue_get_class(const icalvalue* value); 1276 void icalvalue_set_class(icalvalue* value, enum icalproperty_class v); 1277 1278 1279 /* URI */ 1280 icalvalue* icalvalue_new_uri(const char* v); 1281 const char* icalvalue_get_uri(const icalvalue* value); 1282 void icalvalue_set_uri(icalvalue* value, const char* v); 1283 1284 1285 /* DURATION */ 1286 icalvalue* icalvalue_new_duration(struct icaldurationtype v); 1287 struct icaldurationtype icalvalue_get_duration(const icalvalue* value); 1288 void icalvalue_set_duration(icalvalue* value, struct icaldurationtype v); 1289 1290 1291 /* BOOLEAN */ 1292 icalvalue* icalvalue_new_boolean(int v); 1293 int icalvalue_get_boolean(const icalvalue* value); 1294 void icalvalue_set_boolean(icalvalue* value, int v); 1295 1296 1297 /* CAL-ADDRESS */ 1298 icalvalue* icalvalue_new_caladdress(const char* v); 1299 const char* icalvalue_get_caladdress(const icalvalue* value); 1300 void icalvalue_set_caladdress(icalvalue* value, const char* v); 1301 1302 1303 /* X-LIC-CLASS */ 1304 icalvalue* icalvalue_new_xlicclass(enum icalproperty_xlicclass v); 1305 enum icalproperty_xlicclass icalvalue_get_xlicclass(const icalvalue* value); 1306 void icalvalue_set_xlicclass(icalvalue* value, enum icalproperty_xlicclass v); 1307 1308 1309 /* ACTION */ 1310 icalvalue* icalvalue_new_action(enum icalproperty_action v); 1311 enum icalproperty_action icalvalue_get_action(const icalvalue* value); 1312 void icalvalue_set_action(icalvalue* value, enum icalproperty_action v); 1313 1314 1315 /* DATE-TIME */ 1316 icalvalue* icalvalue_new_datetime(struct icaltimetype v); 1317 struct icaltimetype icalvalue_get_datetime(const icalvalue* value); 1318 void icalvalue_set_datetime(icalvalue* value, struct icaltimetype v); 1319 1320 1321 /* UTC-OFFSET */ 1322 icalvalue* icalvalue_new_utcoffset(int v); 1323 int icalvalue_get_utcoffset(const icalvalue* value); 1324 void icalvalue_set_utcoffset(icalvalue* value, int v); 1325 1326 1327 /* METHOD */ 1328 icalvalue* icalvalue_new_method(enum icalproperty_method v); 1329 enum icalproperty_method icalvalue_get_method(const icalvalue* value); 1330 void icalvalue_set_method(icalvalue* value, enum icalproperty_method v); 1331 1332 #endif /*ICALVALUE_H*/ 1333 /* -*- Mode: C -*- */ 1334 /*====================================================================== 1335 FILE: icalparam.h 1336 CREATOR: eric 20 March 1999 1337 1338 1339 1340 1341 1342 (C) COPYRIGHT 2000, Eric Busboom, http://www.softwarestudio.org 1343 1344 This program is free software; you can redistribute it and/or modify 1345 it under the terms of either: 1346 1347 The LGPL as published by the Free Software Foundation, version 1348 2.1, available at: http://www.fsf.org/copyleft/lesser.html 1349 1350 Or: 1351 1352 The Mozilla Public License Version 1.0. You may obtain a copy of 1353 the License at http://www.mozilla.org/MPL/ 1354 1355 The original code is icalparam.h 1356 1357 ======================================================================*/ 1358 1359 #ifndef ICALDERIVEDPARAMETER_H 1360 #define ICALDERIVEDPARAMETER_H 1361 1362 1363 typedef struct icalparameter_impl icalparameter; 1364 1365 const char* icalparameter_enum_to_string(int e); 1366 int icalparameter_string_to_enum(const char* str); 1367 1368 typedef enum icalparameter_kind { 1369 ICAL_ANY_PARAMETER = 0, 1370 ICAL_ACTIONPARAM_PARAMETER, 1371 ICAL_ALTREP_PARAMETER, 1372 ICAL_CHARSET_PARAMETER, 1373 ICAL_CN_PARAMETER, 1374 ICAL_CUTYPE_PARAMETER, 1375 ICAL_DELEGATEDFROM_PARAMETER, 1376 ICAL_DELEGATEDTO_PARAMETER, 1377 ICAL_DIR_PARAMETER, 1378 ICAL_ENABLE_PARAMETER, 1379 ICAL_ENCODING_PARAMETER, 1380 ICAL_FBTYPE_PARAMETER, 1381 ICAL_FMTTYPE_PARAMETER, 1382 ICAL_ID_PARAMETER, 1383 ICAL_LANGUAGE_PARAMETER, 1384 ICAL_LATENCY_PARAMETER, 1385 ICAL_LOCAL_PARAMETER, 1386 ICAL_LOCALIZE_PARAMETER, 1387 ICAL_MEMBER_PARAMETER, 1388 ICAL_OPTIONS_PARAMETER, 1389 ICAL_PARTSTAT_PARAMETER, 1390 ICAL_RANGE_PARAMETER, 1391 ICAL_RELATED_PARAMETER, 1392 ICAL_RELTYPE_PARAMETER, 1393 ICAL_ROLE_PARAMETER, 1394 ICAL_RSVP_PARAMETER, 1395 ICAL_SENTBY_PARAMETER, 1396 ICAL_TZID_PARAMETER, 1397 ICAL_VALUE_PARAMETER, 1398 ICAL_X_PARAMETER, 1399 ICAL_XLICCOMPARETYPE_PARAMETER, 1400 ICAL_XLICERRORTYPE_PARAMETER, 1401 ICAL_NO_PARAMETER 1402 } icalparameter_kind; 1403 1404 #define ICALPARAMETER_FIRST_ENUM 20000 1405 1406 typedef enum icalparameter_action { 1407 ICAL_ACTIONPARAM_X = 20000, 1408 ICAL_ACTIONPARAM_ASK = 20001, 1409 ICAL_ACTIONPARAM_ABORT = 20002, 1410 ICAL_ACTIONPARAM_NONE = 20003 1411 } icalparameter_action; 1412 1413 typedef enum icalparameter_cutype { 1414 ICAL_CUTYPE_X = 20004, 1415 ICAL_CUTYPE_INDIVIDUAL = 20005, 1416 ICAL_CUTYPE_GROUP = 20006, 1417 ICAL_CUTYPE_RESOURCE = 20007, 1418 ICAL_CUTYPE_ROOM = 20008, 1419 ICAL_CUTYPE_UNKNOWN = 20009, 1420 ICAL_CUTYPE_NONE = 20010 1421 } icalparameter_cutype; 1422 1423 typedef enum icalparameter_enable { 1424 ICAL_ENABLE_X = 20011, 1425 ICAL_ENABLE_TRUE = 20012, 1426 ICAL_ENABLE_FALSE = 20013, 1427 ICAL_ENABLE_NONE = 20014 1428 } icalparameter_enable; 1429 1430 typedef enum icalparameter_encoding { 1431 ICAL_ENCODING_X = 20015, 1432 ICAL_ENCODING_8BIT = 20016, 1433 ICAL_ENCODING_BASE64 = 20017, 1434 ICAL_ENCODING_NONE = 20018 1435 } icalparameter_encoding; 1436 1437 typedef enum icalparameter_fbtype { 1438 ICAL_FBTYPE_X = 20019, 1439 ICAL_FBTYPE_FREE = 20020, 1440 ICAL_FBTYPE_BUSY = 20021, 1441 ICAL_FBTYPE_BUSYUNAVAILABLE = 20022, 1442 ICAL_FBTYPE_BUSYTENTATIVE = 20023, 1443 ICAL_FBTYPE_NONE = 20024 1444 } icalparameter_fbtype; 1445 1446 typedef enum icalparameter_local { 1447 ICAL_LOCAL_X = 20025, 1448 ICAL_LOCAL_TRUE = 20026, 1449 ICAL_LOCAL_FALSE = 20027, 1450 ICAL_LOCAL_NONE = 20028 1451 } icalparameter_local; 1452 1453 typedef enum icalparameter_partstat { 1454 ICAL_PARTSTAT_X = 20029, 1455 ICAL_PARTSTAT_NEEDSACTION = 20030, 1456 ICAL_PARTSTAT_ACCEPTED = 20031, 1457 ICAL_PARTSTAT_DECLINED = 20032, 1458 ICAL_PARTSTAT_TENTATIVE = 20033, 1459 ICAL_PARTSTAT_DELEGATED = 20034, 1460 ICAL_PARTSTAT_COMPLETED = 20035, 1461 ICAL_PARTSTAT_INPROCESS = 20036, 1462 ICAL_PARTSTAT_NONE = 20037 1463 } icalparameter_partstat; 1464 1465 typedef enum icalparameter_range { 1466 ICAL_RANGE_X = 20038, 1467 ICAL_RANGE_THISANDPRIOR = 20039, 1468 ICAL_RANGE_THISANDFUTURE = 20040, 1469 ICAL_RANGE_NONE = 20041 1470 } icalparameter_range; 1471 1472 typedef enum icalparameter_related { 1473 ICAL_RELATED_X = 20042, 1474 ICAL_RELATED_START = 20043, 1475 ICAL_RELATED_END = 20044, 1476 ICAL_RELATED_NONE = 20045 1477 } icalparameter_related; 1478 1479 typedef enum icalparameter_reltype { 1480 ICAL_RELTYPE_X = 20046, 1481 ICAL_RELTYPE_PARENT = 20047, 1482 ICAL_RELTYPE_CHILD = 20048, 1483 ICAL_RELTYPE_SIBLING = 20049, 1484 ICAL_RELTYPE_NONE = 20050 1485 } icalparameter_reltype; 1486 1487 typedef enum icalparameter_role { 1488 ICAL_ROLE_X = 20051, 1489 ICAL_ROLE_CHAIR = 20052, 1490 ICAL_ROLE_REQPARTICIPANT = 20053, 1491 ICAL_ROLE_OPTPARTICIPANT = 20054, 1492 ICAL_ROLE_NONPARTICIPANT = 20055, 1493 ICAL_ROLE_NONE = 20056 1494 } icalparameter_role; 1495 1496 typedef enum icalparameter_rsvp { 1497 ICAL_RSVP_X = 20057, 1498 ICAL_RSVP_TRUE = 20058, 1499 ICAL_RSVP_FALSE = 20059, 1500 ICAL_RSVP_NONE = 20060 1501 } icalparameter_rsvp; 1502 1503 typedef enum icalparameter_value { 1504 ICAL_VALUE_X = 20061, 1505 ICAL_VALUE_BINARY = 20062, 1506 ICAL_VALUE_BOOLEAN = 20063, 1507 ICAL_VALUE_DATE = 20064, 1508 ICAL_VALUE_DURATION = 20065, 1509 ICAL_VALUE_FLOAT = 20066, 1510 ICAL_VALUE_INTEGER = 20067, 1511 ICAL_VALUE_PERIOD = 20068, 1512 ICAL_VALUE_RECUR = 20069, 1513 ICAL_VALUE_TEXT = 20070, 1514 ICAL_VALUE_URI = 20071, 1515 ICAL_VALUE_ERROR = 20072, 1516 ICAL_VALUE_DATETIME = 20073, 1517 ICAL_VALUE_UTCOFFSET = 20074, 1518 ICAL_VALUE_CALADDRESS = 20075, 1519 ICAL_VALUE_NONE = 20076 1520 } icalparameter_value; 1521 1522 typedef enum icalparameter_xliccomparetype { 1523 ICAL_XLICCOMPARETYPE_X = 20077, 1524 ICAL_XLICCOMPARETYPE_EQUAL = 20078, 1525 ICAL_XLICCOMPARETYPE_NOTEQUAL = 20079, 1526 ICAL_XLICCOMPARETYPE_LESS = 20080, 1527 ICAL_XLICCOMPARETYPE_GREATER = 20081, 1528 ICAL_XLICCOMPARETYPE_LESSEQUAL = 20082, 1529 ICAL_XLICCOMPARETYPE_GREATEREQUAL = 20083, 1530 ICAL_XLICCOMPARETYPE_REGEX = 20084, 1531 ICAL_XLICCOMPARETYPE_ISNULL = 20085, 1532 ICAL_XLICCOMPARETYPE_ISNOTNULL = 20086, 1533 ICAL_XLICCOMPARETYPE_NONE = 20087 1534 } icalparameter_xliccomparetype; 1535 1536 typedef enum icalparameter_xlicerrortype { 1537 ICAL_XLICERRORTYPE_X = 20088, 1538 ICAL_XLICERRORTYPE_COMPONENTPARSEERROR = 20089, 1539 ICAL_XLICERRORTYPE_PROPERTYPARSEERROR = 20090, 1540 ICAL_XLICERRORTYPE_PARAMETERNAMEPARSEERROR = 20091, 1541 ICAL_XLICERRORTYPE_PARAMETERVALUEPARSEERROR = 20092, 1542 ICAL_XLICERRORTYPE_VALUEPARSEERROR = 20093, 1543 ICAL_XLICERRORTYPE_INVALIDITIP = 20094, 1544 ICAL_XLICERRORTYPE_UNKNOWNVCALPROPERROR = 20095, 1545 ICAL_XLICERRORTYPE_MIMEPARSEERROR = 20096, 1546 ICAL_XLICERRORTYPE_VCALPROPPARSEERROR = 20097, 1547 ICAL_XLICERRORTYPE_NONE = 20098 1548 } icalparameter_xlicerrortype; 1549 1550 #define ICALPARAMETER_LAST_ENUM 20099 1551 1552 /* ID */ 1553 icalparameter* icalparameter_new_id(const char* v); 1554 const char* icalparameter_get_id(const icalparameter* value); 1555 void icalparameter_set_id(icalparameter* value, const char* v); 1556 1557 /* LOCALIZE */ 1558 icalparameter* icalparameter_new_localize(const char* v); 1559 const char* icalparameter_get_localize(const icalparameter* value); 1560 void icalparameter_set_localize(icalparameter* value, const char* v); 1561 1562 /* LANGUAGE */ 1563 icalparameter* icalparameter_new_language(const char* v); 1564 const char* icalparameter_get_language(const icalparameter* value); 1565 void icalparameter_set_language(icalparameter* value, const char* v); 1566 1567 /* DIR */ 1568 icalparameter* icalparameter_new_dir(const char* v); 1569 const char* icalparameter_get_dir(const icalparameter* value); 1570 void icalparameter_set_dir(icalparameter* value, const char* v); 1571 1572 /* RELTYPE */ 1573 icalparameter* icalparameter_new_reltype(icalparameter_reltype v); 1574 icalparameter_reltype icalparameter_get_reltype(const icalparameter* value); 1575 void icalparameter_set_reltype(icalparameter* value, icalparameter_reltype v); 1576 1577 /* FMTTYPE */ 1578 icalparameter* icalparameter_new_fmttype(const char* v); 1579 const char* icalparameter_get_fmttype(const icalparameter* value); 1580 void icalparameter_set_fmttype(icalparameter* value, const char* v); 1581 1582 /* OPTIONS */ 1583 icalparameter* icalparameter_new_options(const char* v); 1584 const char* icalparameter_get_options(const icalparameter* value); 1585 void icalparameter_set_options(icalparameter* value, const char* v); 1586 1587 /* TZID */ 1588 icalparameter* icalparameter_new_tzid(const char* v); 1589 const char* icalparameter_get_tzid(const icalparameter* value); 1590 void icalparameter_set_tzid(icalparameter* value, const char* v); 1591 1592 /* ENABLE */ 1593 icalparameter* icalparameter_new_enable(icalparameter_enable v); 1594 icalparameter_enable icalparameter_get_enable(const icalparameter* value); 1595 void icalparameter_set_enable(icalparameter* value, icalparameter_enable v); 1596 1597 /* RANGE */ 1598 icalparameter* icalparameter_new_range(icalparameter_range v); 1599 icalparameter_range icalparameter_get_range(const icalparameter* value); 1600 void icalparameter_set_range(icalparameter* value, icalparameter_range v); 1601 1602 /* LATENCY */ 1603 icalparameter* icalparameter_new_latency(const char* v); 1604 const char* icalparameter_get_latency(const icalparameter* value); 1605 void icalparameter_set_latency(icalparameter* value, const char* v); 1606 1607 /* DELEGATED-TO */ 1608 icalparameter* icalparameter_new_delegatedto(const char* v); 1609 const char* icalparameter_get_delegatedto(const icalparameter* value); 1610 void icalparameter_set_delegatedto(icalparameter* value, const char* v); 1611 1612 /* LOCAL */ 1613 icalparameter* icalparameter_new_local(icalparameter_local v); 1614 icalparameter_local icalparameter_get_local(const icalparameter* value); 1615 void icalparameter_set_local(icalparameter* value, icalparameter_local v); 1616 1617 /* CN */ 1618 icalparameter* icalparameter_new_cn(const char* v); 1619 const char* icalparameter_get_cn(const icalparameter* value); 1620 void icalparameter_set_cn(icalparameter* value, const char* v); 1621 1622 /* CHARSET */ 1623 icalparameter* icalparameter_new_charset(const char* v); 1624 const char* icalparameter_get_charset(const icalparameter* value); 1625 void icalparameter_set_charset(icalparameter* value, const char* v); 1626 1627 /* ACTIONPARAM */ 1628 icalparameter* icalparameter_new_actionparam(icalparameter_action v); 1629 icalparameter_action icalparameter_get_actionparam(const icalparameter* value); 1630 void icalparameter_set_actionparam(icalparameter* value, icalparameter_action v); 1631 1632 /* VALUE */ 1633 icalparameter* icalparameter_new_value(icalparameter_value v); 1634 icalparameter_value icalparameter_get_value(const icalparameter* value); 1635 void icalparameter_set_value(icalparameter* value, icalparameter_value v); 1636 1637 /* X-LIC-COMPARETYPE */ 1638 icalparameter* icalparameter_new_xliccomparetype(icalparameter_xliccomparetype v); 1639 icalparameter_xliccomparetype icalparameter_get_xliccomparetype(const icalparameter* value); 1640 void icalparameter_set_xliccomparetype(icalparameter* value, icalparameter_xliccomparetype v); 1641 1642 /* X */ 1643 icalparameter* icalparameter_new_x(const char* v); 1644 const char* icalparameter_get_x(const icalparameter* value); 1645 void icalparameter_set_x(icalparameter* value, const char* v); 1646 1647 /* MEMBER */ 1648 icalparameter* icalparameter_new_member(const char* v); 1649 const char* icalparameter_get_member(const icalparameter* value); 1650 void icalparameter_set_member(icalparameter* value, const char* v); 1651 1652 /* SENT-BY */ 1653 icalparameter* icalparameter_new_sentby(const char* v); 1654 const char* icalparameter_get_sentby(const icalparameter* value); 1655 void icalparameter_set_sentby(icalparameter* value, const char* v); 1656 1657 /* CUTYPE */ 1658 icalparameter* icalparameter_new_cutype(icalparameter_cutype v); 1659 icalparameter_cutype icalparameter_get_cutype(const icalparameter* value); 1660 void icalparameter_set_cutype(icalparameter* value, icalparameter_cutype v); 1661 1662 /* RSVP */ 1663 icalparameter* icalparameter_new_rsvp(icalparameter_rsvp v); 1664 icalparameter_rsvp icalparameter_get_rsvp(const icalparameter* value); 1665 void icalparameter_set_rsvp(icalparameter* value, icalparameter_rsvp v); 1666 1667 /* RELATED */ 1668 icalparameter* icalparameter_new_related(icalparameter_related v); 1669 icalparameter_related icalparameter_get_related(const icalparameter* value); 1670 void icalparameter_set_related(icalparameter* value, icalparameter_related v); 1671 1672 /* X-LIC-ERRORTYPE */ 1673 icalparameter* icalparameter_new_xlicerrortype(icalparameter_xlicerrortype v); 1674 icalparameter_xlicerrortype icalparameter_get_xlicerrortype(const icalparameter* value); 1675 void icalparameter_set_xlicerrortype(icalparameter* value, icalparameter_xlicerrortype v); 1676 1677 /* ENCODING */ 1678 icalparameter* icalparameter_new_encoding(icalparameter_encoding v); 1679 icalparameter_encoding icalparameter_get_encoding(const icalparameter* value); 1680 void icalparameter_set_encoding(icalparameter* value, icalparameter_encoding v); 1681 1682 /* ALTREP */ 1683 icalparameter* icalparameter_new_altrep(const char* v); 1684 const char* icalparameter_get_altrep(const icalparameter* value); 1685 void icalparameter_set_altrep(icalparameter* value, const char* v); 1686 1687 /* DELEGATED-FROM */ 1688 icalparameter* icalparameter_new_delegatedfrom(const char* v); 1689 const char* icalparameter_get_delegatedfrom(const icalparameter* value); 1690 void icalparameter_set_delegatedfrom(icalparameter* value, const char* v); 1691 1692 /* FBTYPE */ 1693 icalparameter* icalparameter_new_fbtype(icalparameter_fbtype v); 1694 icalparameter_fbtype icalparameter_get_fbtype(const icalparameter* value); 1695 void icalparameter_set_fbtype(icalparameter* value, icalparameter_fbtype v); 1696 1697 /* PARTSTAT */ 1698 icalparameter* icalparameter_new_partstat(icalparameter_partstat v); 1699 icalparameter_partstat icalparameter_get_partstat(const icalparameter* value); 1700 void icalparameter_set_partstat(icalparameter* value, icalparameter_partstat v); 1701 1702 /* ROLE */ 1703 icalparameter* icalparameter_new_role(icalparameter_role v); 1704 icalparameter_role icalparameter_get_role(const icalparameter* value); 1705 void icalparameter_set_role(icalparameter* value, icalparameter_role v); 1706 1707 #endif /*ICALPARAMETER_H*/ 1708 1709 /* Everything below this line is machine generated. Do not edit. */ 1710 /* -*- Mode: C -*- */ 1711 /*====================================================================== 1712 FILE: icalvalue.h 1713 CREATOR: eric 20 March 1999 1714 1715 1716 1717 (C) COPYRIGHT 2000, Eric Busboom <eric@softwarestudio.org> 1718 http://www.softwarestudio.org 1719 1720 This program is free software; you can redistribute it and/or modify 1721 it under the terms of either: 1722 1723 The LGPL as published by the Free Software Foundation, version 1724 2.1, available at: http://www.fsf.org/copyleft/lesser.html 1725 1726 Or: 1727 1728 The Mozilla Public License Version 1.0. You may obtain a copy of 1729 the License at http://www.mozilla.org/MPL/ 1730 1731 The original code is icalvalue.h 1732 1733 ======================================================================*/ 1734 1735 #ifndef ICALVALUE_H 1736 #define ICALVALUE_H 1737 1738 #include <time.h> 1739 1740 /* Defined in icalderivedvalue.h */ 1741 /*typedef struct icalvalue_impl icalvalue;*/ 1742 1743 icalvalue* icalvalue_new(icalvalue_kind kind); 1744 1745 icalvalue* icalvalue_new_clone(const icalvalue* value); 1746 1747 icalvalue* icalvalue_new_from_string(icalvalue_kind kind, const char* str); 1748 1749 void icalvalue_free(icalvalue* value); 1750 1751 int icalvalue_is_valid(const icalvalue* value); 1752 1753 const char* icalvalue_as_ical_string(const icalvalue* value); 1754 char* icalvalue_as_ical_string_r(const icalvalue* value); 1755 1756 icalvalue_kind icalvalue_isa(const icalvalue* value); 1757 1758 int icalvalue_isa_value(void*); 1759 1760 icalparameter_xliccomparetype icalvalue_compare(const icalvalue* a, const icalvalue *b); 1761 1762 1763 /* Special, non autogenerated value accessors */ 1764 1765 icalvalue* icalvalue_new_recur (struct icalrecurrencetype v); 1766 void icalvalue_set_recur(icalvalue* value, struct icalrecurrencetype v); 1767 struct icalrecurrencetype icalvalue_get_recur(const icalvalue* value); 1768 1769 icalvalue* icalvalue_new_trigger (struct icaltriggertype v); 1770 void icalvalue_set_trigger(icalvalue* value, struct icaltriggertype v); 1771 struct icaltriggertype icalvalue_get_trigger(const icalvalue* value); 1772 1773 icalvalue* icalvalue_new_datetimeperiod (struct icaldatetimeperiodtype v); 1774 void icalvalue_set_datetimeperiod(icalvalue* value, 1775 struct icaldatetimeperiodtype v); 1776 struct icaldatetimeperiodtype icalvalue_get_datetimeperiod(const icalvalue* value); 1777 1778 /* Convert enumerations */ 1779 1780 icalvalue_kind icalvalue_string_to_kind(const char* str); 1781 const char* icalvalue_kind_to_string(const icalvalue_kind kind); 1782 1783 /** Check validity of a specific icalvalue_kind **/ 1784 int icalvalue_kind_is_valid(const icalvalue_kind kind); 1785 1786 /** Encode a character string in ical format, esacpe certain characters, etc. */ 1787 int icalvalue_encode_ical_string(const char *szText, char *szEncText, int MaxBufferLen); 1788 1789 /** Extract the original character string encoded by the above function **/ 1790 int icalvalue_decode_ical_string(const char *szText, char *szDecText, int nMaxBufferLen); 1791 1792 #endif /*ICALVALUE_H*/ 1793 /* -*- Mode: C -*- */ 1794 /*====================================================================== 1795 FILE: icalparam.h 1796 CREATOR: eric 20 March 1999 1797 1798 1799 1800 1801 1802 (C) COPYRIGHT 2000, Eric Busboom <eric@softwarestudio.org> 1803 http://www.softwarestudio.org 1804 1805 This program is free software; you can redistribute it and/or modify 1806 it under the terms of either: 1807 1808 The LGPL as published by the Free Software Foundation, version 1809 2.1, available at: http://www.fsf.org/copyleft/lesser.html 1810 1811 Or: 1812 1813 The Mozilla Public License Version 1.0. You may obtain a copy of 1814 the License at http://www.mozilla.org/MPL/ 1815 1816 The original code is icalparam.h 1817 1818 ======================================================================*/ 1819 1820 #ifndef ICALPARAM_H 1821 #define ICALPARAM_H 1822 1823 1824 /* Declared in icalderivedparameter.h */ 1825 /*typedef struct icalparameter_impl icalparameter;*/ 1826 1827 icalparameter* icalparameter_new(icalparameter_kind kind); 1828 icalparameter* icalparameter_new_clone(icalparameter* p); 1829 1830 /* Create from string of form "PARAMNAME=VALUE" */ 1831 icalparameter* icalparameter_new_from_string(const char* value); 1832 1833 /* Create from just the value, the part after the "=" */ 1834 icalparameter* icalparameter_new_from_value_string(icalparameter_kind kind, const char* value); 1835 1836 void icalparameter_free(icalparameter* parameter); 1837 1838 char* icalparameter_as_ical_string(icalparameter* parameter); 1839 char* icalparameter_as_ical_string_r(icalparameter* parameter); 1840 1841 int icalparameter_is_valid(icalparameter* parameter); 1842 1843 icalparameter_kind icalparameter_isa(icalparameter* parameter); 1844 1845 int icalparameter_isa_parameter(void* param); 1846 1847 /* Access the name of an X parameer */ 1848 void icalparameter_set_xname (icalparameter* param, const char* v); 1849 const char* icalparameter_get_xname(icalparameter* param); 1850 void icalparameter_set_xvalue (icalparameter* param, const char* v); 1851 const char* icalparameter_get_xvalue(icalparameter* param); 1852 1853 /* Convert enumerations */ 1854 1855 const char* icalparameter_kind_to_string(icalparameter_kind kind); 1856 icalparameter_kind icalparameter_string_to_kind(const char* string); 1857 1858 1859 1860 #endif 1861 /* -*- Mode: C -*- 1862 ====================================================================== 1863 FILE: icalderivedproperties.{c,h} 1864 CREATOR: eric 09 May 1999 1865 1866 1867 (C) COPYRIGHT 2000, Eric Busboom, http://www.softwarestudio.org 1868 ======================================================================*/ 1869 1870 1871 #ifndef ICALDERIVEDPROPERTY_H 1872 #define ICALDERIVEDPROPERTY_H 1873 1874 #include <time.h> 1875 1876 typedef struct icalproperty_impl icalproperty; 1877 1878 typedef enum icalproperty_kind { 1879 ICAL_ANY_PROPERTY = 0, 1880 ICAL_ACTION_PROPERTY, 1881 ICAL_ALLOWCONFLICT_PROPERTY, 1882 ICAL_ATTACH_PROPERTY, 1883 ICAL_ATTENDEE_PROPERTY, 1884 ICAL_CALID_PROPERTY, 1885 ICAL_CALMASTER_PROPERTY, 1886 ICAL_CALSCALE_PROPERTY, 1887 ICAL_CAPVERSION_PROPERTY, 1888 ICAL_CARLEVEL_PROPERTY, 1889 ICAL_CARID_PROPERTY, 1890 ICAL_CATEGORIES_PROPERTY, 1891 ICAL_CLASS_PROPERTY, 1892 ICAL_CMD_PROPERTY, 1893 ICAL_COMMENT_PROPERTY, 1894 ICAL_COMPLETED_PROPERTY, 1895 ICAL_COMPONENTS_PROPERTY, 1896 ICAL_CONTACT_PROPERTY, 1897 ICAL_CREATED_PROPERTY, 1898 ICAL_CSID_PROPERTY, 1899 ICAL_DATEMAX_PROPERTY, 1900 ICAL_DATEMIN_PROPERTY, 1901 ICAL_DECREED_PROPERTY, 1902 ICAL_DEFAULTCHARSET_PROPERTY, 1903 ICAL_DEFAULTLOCALE_PROPERTY, 1904 ICAL_DEFAULTTZID_PROPERTY, 1905 ICAL_DEFAULTVCARS_PROPERTY, 1906 ICAL_DENY_PROPERTY, 1907 ICAL_DESCRIPTION_PROPERTY, 1908 ICAL_DTEND_PROPERTY, 1909 ICAL_DTSTAMP_PROPERTY, 1910 ICAL_DTSTART_PROPERTY, 1911 ICAL_DUE_PROPERTY, 1912 ICAL_DURATION_PROPERTY, 1913 ICAL_EXDATE_PROPERTY, 1914 ICAL_EXPAND_PROPERTY, 1915 ICAL_EXRULE_PROPERTY, 1916 ICAL_FREEBUSY_PROPERTY, 1917 ICAL_GEO_PROPERTY, 1918 ICAL_GRANT_PROPERTY, 1919 ICAL_ITIPVERSION_PROPERTY, 1920 ICAL_LASTMODIFIED_PROPERTY, 1921 ICAL_LOCATION_PROPERTY, 1922 ICAL_MAXCOMPONENTSIZE_PROPERTY, 1923 ICAL_MAXDATE_PROPERTY, 1924 ICAL_MAXRESULTS_PROPERTY, 1925 ICAL_MAXRESULTSSIZE_PROPERTY, 1926 ICAL_METHOD_PROPERTY, 1927 ICAL_MINDATE_PROPERTY, 1928 ICAL_MULTIPART_PROPERTY, 1929 ICAL_NAME_PROPERTY, 1930 ICAL_ORGANIZER_PROPERTY, 1931 ICAL_OWNER_PROPERTY, 1932 ICAL_PERCENTCOMPLETE_PROPERTY, 1933 ICAL_PERMISSION_PROPERTY, 1934 ICAL_PRIORITY_PROPERTY, 1935 ICAL_PRODID_PROPERTY, 1936 ICAL_QUERY_PROPERTY, 1937 ICAL_QUERYLEVEL_PROPERTY, 1938 ICAL_QUERYID_PROPERTY, 1939 ICAL_QUERYNAME_PROPERTY, 1940 ICAL_RDATE_PROPERTY, 1941 ICAL_RECURACCEPTED_PROPERTY, 1942 ICAL_RECUREXPAND_PROPERTY, 1943 ICAL_RECURLIMIT_PROPERTY, 1944 ICAL_RECURRENCEID_PROPERTY, 1945 ICAL_RELATEDTO_PROPERTY, 1946 ICAL_RELCALID_PROPERTY, 1947 ICAL_REPEAT_PROPERTY, 1948 ICAL_REQUESTSTATUS_PROPERTY, 1949 ICAL_RESOURCES_PROPERTY, 1950 ICAL_RESTRICTION_PROPERTY, 1951 ICAL_RRULE_PROPERTY, 1952 ICAL_SCOPE_PROPERTY, 1953 ICAL_SEQUENCE_PROPERTY, 1954 ICAL_STATUS_PROPERTY, 1955 ICAL_STORESEXPANDED_PROPERTY, 1956 ICAL_SUMMARY_PROPERTY, 1957 ICAL_TARGET_PROPERTY, 1958 ICAL_TRANSP_PROPERTY, 1959 ICAL_TRIGGER_PROPERTY, 1960 ICAL_TZID_PROPERTY, 1961 ICAL_TZNAME_PROPERTY, 1962 ICAL_TZOFFSETFROM_PROPERTY, 1963 ICAL_TZOFFSETTO_PROPERTY, 1964 ICAL_TZURL_PROPERTY, 1965 ICAL_UID_PROPERTY, 1966 ICAL_URL_PROPERTY, 1967 ICAL_VERSION_PROPERTY, 1968 ICAL_X_PROPERTY, 1969 ICAL_XLICCLASS_PROPERTY, 1970 ICAL_XLICCLUSTERCOUNT_PROPERTY, 1971 ICAL_XLICERROR_PROPERTY, 1972 ICAL_XLICMIMECHARSET_PROPERTY, 1973 ICAL_XLICMIMECID_PROPERTY, 1974 ICAL_XLICMIMECONTENTTYPE_PROPERTY, 1975 ICAL_XLICMIMEENCODING_PROPERTY, 1976 ICAL_XLICMIMEFILENAME_PROPERTY, 1977 ICAL_XLICMIMEOPTINFO_PROPERTY, 1978 ICAL_NO_PROPERTY 1979 } icalproperty_kind; 1980 1981 1982 /* ACTION */ 1983 icalproperty* icalproperty_new_action(enum icalproperty_action v); 1984 void icalproperty_set_action(icalproperty* prop, enum icalproperty_action v); 1985 enum icalproperty_action icalproperty_get_action(const icalproperty* prop);icalproperty* icalproperty_vanew_action(enum icalproperty_action v, ...); 1986 1987 /* ALLOW-CONFLICT */ 1988 icalproperty* icalproperty_new_allowconflict(const char* v); 1989 void icalproperty_set_allowconflict(icalproperty* prop, const char* v); 1990 const char* icalproperty_get_allowconflict(const icalproperty* prop);icalproperty* icalproperty_vanew_allowconflict(const char* v, ...); 1991 1992 /* ATTACH */ 1993 icalproperty* icalproperty_new_attach(icalattach * v); 1994 void icalproperty_set_attach(icalproperty* prop, icalattach * v); 1995 icalattach * icalproperty_get_attach(const icalproperty* prop);icalproperty* icalproperty_vanew_attach(icalattach * v, ...); 1996 1997 /* ATTENDEE */ 1998 icalproperty* icalproperty_new_attendee(const char* v); 1999 void icalproperty_set_attendee(icalproperty* prop, const char* v); 2000 const char* icalproperty_get_attendee(const icalproperty* prop);icalproperty* icalproperty_vanew_attendee(const char* v, ...); 2001 2002 /* CALID */ 2003 icalproperty* icalproperty_new_calid(const char* v); 2004 void icalproperty_set_calid(icalproperty* prop, const char* v); 2005 const char* icalproperty_get_calid(const icalproperty* prop);icalproperty* icalproperty_vanew_calid(const char* v, ...); 2006 2007 /* CALMASTER */ 2008 icalproperty* icalproperty_new_calmaster(const char* v); 2009 void icalproperty_set_calmaster(icalproperty* prop, const char* v); 2010 const char* icalproperty_get_calmaster(const icalproperty* prop);icalproperty* icalproperty_vanew_calmaster(const char* v, ...); 2011 2012 /* CALSCALE */ 2013 icalproperty* icalproperty_new_calscale(const char* v); 2014 void icalproperty_set_calscale(icalproperty* prop, const char* v); 2015 const char* icalproperty_get_calscale(const icalproperty* prop);icalproperty* icalproperty_vanew_calscale(const char* v, ...); 2016 2017 /* CAP-VERSION */ 2018 icalproperty* icalproperty_new_capversion(const char* v); 2019 void icalproperty_set_capversion(icalproperty* prop, const char* v); 2020 const char* icalproperty_get_capversion(const icalproperty* prop);icalproperty* icalproperty_vanew_capversion(const char* v, ...); 2021 2022 /* CAR-LEVEL */ 2023 icalproperty* icalproperty_new_carlevel(enum icalproperty_carlevel v); 2024 void icalproperty_set_carlevel(icalproperty* prop, enum icalproperty_carlevel v); 2025 enum icalproperty_carlevel icalproperty_get_carlevel(const icalproperty* prop);icalproperty* icalproperty_vanew_carlevel(enum icalproperty_carlevel v, ...); 2026 2027 /* CARID */ 2028 icalproperty* icalproperty_new_carid(const char* v); 2029 void icalproperty_set_carid(icalproperty* prop, const char* v); 2030 const char* icalproperty_get_carid(const icalproperty* prop);icalproperty* icalproperty_vanew_carid(const char* v, ...); 2031 2032 /* CATEGORIES */ 2033 icalproperty* icalproperty_new_categories(const char* v); 2034 void icalproperty_set_categories(icalproperty* prop, const char* v); 2035 const char* icalproperty_get_categories(const icalproperty* prop);icalproperty* icalproperty_vanew_categories(const char* v, ...); 2036 2037 /* CLASS */ 2038 icalproperty* icalproperty_new_class(enum icalproperty_class v); 2039 void icalproperty_set_class(icalproperty* prop, enum icalproperty_class v); 2040 enum icalproperty_class icalproperty_get_class(const icalproperty* prop);icalproperty* icalproperty_vanew_class(enum icalproperty_class v, ...); 2041 2042 /* CMD */ 2043 icalproperty* icalproperty_new_cmd(enum icalproperty_cmd v); 2044 void icalproperty_set_cmd(icalproperty* prop, enum icalproperty_cmd v); 2045 enum icalproperty_cmd icalproperty_get_cmd(const icalproperty* prop);icalproperty* icalproperty_vanew_cmd(enum icalproperty_cmd v, ...); 2046 2047 /* COMMENT */ 2048 icalproperty* icalproperty_new_comment(const char* v); 2049 void icalproperty_set_comment(icalproperty* prop, const char* v); 2050 const char* icalproperty_get_comment(const icalproperty* prop);icalproperty* icalproperty_vanew_comment(const char* v, ...); 2051 2052 /* COMPLETED */ 2053 icalproperty* icalproperty_new_completed(struct icaltimetype v); 2054 void icalproperty_set_completed(icalproperty* prop, struct icaltimetype v); 2055 struct icaltimetype icalproperty_get_completed(const icalproperty* prop);icalproperty* icalproperty_vanew_completed(struct icaltimetype v, ...); 2056 2057 /* COMPONENTS */ 2058 icalproperty* icalproperty_new_components(const char* v); 2059 void icalproperty_set_components(icalproperty* prop, const char* v); 2060 const char* icalproperty_get_components(const icalproperty* prop);icalproperty* icalproperty_vanew_components(const char* v, ...); 2061 2062 /* CONTACT */ 2063 icalproperty* icalproperty_new_contact(const char* v); 2064 void icalproperty_set_contact(icalproperty* prop, const char* v); 2065 const char* icalproperty_get_contact(const icalproperty* prop);icalproperty* icalproperty_vanew_contact(const char* v, ...); 2066 2067 /* CREATED */ 2068 icalproperty* icalproperty_new_created(struct icaltimetype v); 2069 void icalproperty_set_created(icalproperty* prop, struct icaltimetype v); 2070 struct icaltimetype icalproperty_get_created(const icalproperty* prop);icalproperty* icalproperty_vanew_created(struct icaltimetype v, ...); 2071 2072 /* CSID */ 2073 icalproperty* icalproperty_new_csid(const char* v); 2074 void icalproperty_set_csid(icalproperty* prop, const char* v); 2075 const char* icalproperty_get_csid(const icalproperty* prop);icalproperty* icalproperty_vanew_csid(const char* v, ...); 2076 2077 /* DATE-MAX */ 2078 icalproperty* icalproperty_new_datemax(struct icaltimetype v); 2079 void icalproperty_set_datemax(icalproperty* prop, struct icaltimetype v); 2080 struct icaltimetype icalproperty_get_datemax(const icalproperty* prop);icalproperty* icalproperty_vanew_datemax(struct icaltimetype v, ...); 2081 2082 /* DATE-MIN */ 2083 icalproperty* icalproperty_new_datemin(struct icaltimetype v); 2084 void icalproperty_set_datemin(icalproperty* prop, struct icaltimetype v); 2085 struct icaltimetype icalproperty_get_datemin(const icalproperty* prop);icalproperty* icalproperty_vanew_datemin(struct icaltimetype v, ...); 2086 2087 /* DECREED */ 2088 icalproperty* icalproperty_new_decreed(const char* v); 2089 void icalproperty_set_decreed(icalproperty* prop, const char* v); 2090 const char* icalproperty_get_decreed(const icalproperty* prop);icalproperty* icalproperty_vanew_decreed(const char* v, ...); 2091 2092 /* DEFAULT-CHARSET */ 2093 icalproperty* icalproperty_new_defaultcharset(const char* v); 2094 void icalproperty_set_defaultcharset(icalproperty* prop, const char* v); 2095 const char* icalproperty_get_defaultcharset(const icalproperty* prop);icalproperty* icalproperty_vanew_defaultcharset(const char* v, ...); 2096 2097 /* DEFAULT-LOCALE */ 2098 icalproperty* icalproperty_new_defaultlocale(const char* v); 2099 void icalproperty_set_defaultlocale(icalproperty* prop, const char* v); 2100 const char* icalproperty_get_defaultlocale(const icalproperty* prop);icalproperty* icalproperty_vanew_defaultlocale(const char* v, ...); 2101 2102 /* DEFAULT-TZID */ 2103 icalproperty* icalproperty_new_defaulttzid(const char* v); 2104 void icalproperty_set_defaulttzid(icalproperty* prop, const char* v); 2105 const char* icalproperty_get_defaulttzid(const icalproperty* prop);icalproperty* icalproperty_vanew_defaulttzid(const char* v, ...); 2106 2107 /* DEFAULT-VCARS */ 2108 icalproperty* icalproperty_new_defaultvcars(const char* v); 2109 void icalproperty_set_defaultvcars(icalproperty* prop, const char* v); 2110 const char* icalproperty_get_defaultvcars(const icalproperty* prop);icalproperty* icalproperty_vanew_defaultvcars(const char* v, ...); 2111 2112 /* DENY */ 2113 icalproperty* icalproperty_new_deny(const char* v); 2114 void icalproperty_set_deny(icalproperty* prop, const char* v); 2115 const char* icalproperty_get_deny(const icalproperty* prop);icalproperty* icalproperty_vanew_deny(const char* v, ...); 2116 2117 /* DESCRIPTION */ 2118 icalproperty* icalproperty_new_description(const char* v); 2119 void icalproperty_set_description(icalproperty* prop, const char* v); 2120 const char* icalproperty_get_description(const icalproperty* prop);icalproperty* icalproperty_vanew_description(const char* v, ...); 2121 2122 /* DTEND */ 2123 icalproperty* icalproperty_new_dtend(struct icaltimetype v); 2124 void icalproperty_set_dtend(icalproperty* prop, struct icaltimetype v); 2125 struct icaltimetype icalproperty_get_dtend(const icalproperty* prop);icalproperty* icalproperty_vanew_dtend(struct icaltimetype v, ...); 2126 2127 /* DTSTAMP */ 2128 icalproperty* icalproperty_new_dtstamp(struct icaltimetype v); 2129 void icalproperty_set_dtstamp(icalproperty* prop, struct icaltimetype v); 2130 struct icaltimetype icalproperty_get_dtstamp(const icalproperty* prop);icalproperty* icalproperty_vanew_dtstamp(struct icaltimetype v, ...); 2131 2132 /* DTSTART */ 2133 icalproperty* icalproperty_new_dtstart(struct icaltimetype v); 2134 void icalproperty_set_dtstart(icalproperty* prop, struct icaltimetype v); 2135 struct icaltimetype icalproperty_get_dtstart(const icalproperty* prop);icalproperty* icalproperty_vanew_dtstart(struct icaltimetype v, ...); 2136 2137 /* DUE */ 2138 icalproperty* icalproperty_new_due(struct icaltimetype v); 2139 void icalproperty_set_due(icalproperty* prop, struct icaltimetype v); 2140 struct icaltimetype icalproperty_get_due(const icalproperty* prop);icalproperty* icalproperty_vanew_due(struct icaltimetype v, ...); 2141 2142 /* DURATION */ 2143 icalproperty* icalproperty_new_duration(struct icaldurationtype v); 2144 void icalproperty_set_duration(icalproperty* prop, struct icaldurationtype v); 2145 struct icaldurationtype icalproperty_get_duration(const icalproperty* prop);icalproperty* icalproperty_vanew_duration(struct icaldurationtype v, ...); 2146 2147 /* EXDATE */ 2148 icalproperty* icalproperty_new_exdate(struct icaltimetype v); 2149 void icalproperty_set_exdate(icalproperty* prop, struct icaltimetype v); 2150 struct icaltimetype icalproperty_get_exdate(const icalproperty* prop);icalproperty* icalproperty_vanew_exdate(struct icaltimetype v, ...); 2151 2152 /* EXPAND */ 2153 icalproperty* icalproperty_new_expand(int v); 2154 void icalproperty_set_expand(icalproperty* prop, int v); 2155 int icalproperty_get_expand(const icalproperty* prop);icalproperty* icalproperty_vanew_expand(int v, ...); 2156 2157 /* EXRULE */ 2158 icalproperty* icalproperty_new_exrule(struct icalrecurrencetype v); 2159 void icalproperty_set_exrule(icalproperty* prop, struct icalrecurrencetype v); 2160 struct icalrecurrencetype icalproperty_get_exrule(const icalproperty* prop);icalproperty* icalproperty_vanew_exrule(struct icalrecurrencetype v, ...); 2161 2162 /* FREEBUSY */ 2163 icalproperty* icalproperty_new_freebusy(struct icalperiodtype v); 2164 void icalproperty_set_freebusy(icalproperty* prop, struct icalperiodtype v); 2165 struct icalperiodtype icalproperty_get_freebusy(const icalproperty* prop);icalproperty* icalproperty_vanew_freebusy(struct icalperiodtype v, ...); 2166 2167 /* GEO */ 2168 icalproperty* icalproperty_new_geo(struct icalgeotype v); 2169 void icalproperty_set_geo(icalproperty* prop, struct icalgeotype v); 2170 struct icalgeotype icalproperty_get_geo(const icalproperty* prop);icalproperty* icalproperty_vanew_geo(struct icalgeotype v, ...); 2171 2172 /* GRANT */ 2173 icalproperty* icalproperty_new_grant(const char* v); 2174 void icalproperty_set_grant(icalproperty* prop, const char* v); 2175 const char* icalproperty_get_grant(const icalproperty* prop);icalproperty* icalproperty_vanew_grant(const char* v, ...); 2176 2177 /* ITIP-VERSION */ 2178 icalproperty* icalproperty_new_itipversion(const char* v); 2179 void icalproperty_set_itipversion(icalproperty* prop, const char* v); 2180 const char* icalproperty_get_itipversion(const icalproperty* prop);icalproperty* icalproperty_vanew_itipversion(const char* v, ...); 2181 2182 /* LAST-MODIFIED */ 2183 icalproperty* icalproperty_new_lastmodified(struct icaltimetype v); 2184 void icalproperty_set_lastmodified(icalproperty* prop, struct icaltimetype v); 2185 struct icaltimetype icalproperty_get_lastmodified(const icalproperty* prop);icalproperty* icalproperty_vanew_lastmodified(struct icaltimetype v, ...); 2186 2187 /* LOCATION */ 2188 icalproperty* icalproperty_new_location(const char* v); 2189 void icalproperty_set_location(icalproperty* prop, const char* v); 2190 const char* icalproperty_get_location(const icalproperty* prop);icalproperty* icalproperty_vanew_location(const char* v, ...); 2191 2192 /* MAX-COMPONENT-SIZE */ 2193 icalproperty* icalproperty_new_maxcomponentsize(int v); 2194 void icalproperty_set_maxcomponentsize(icalproperty* prop, int v); 2195 int icalproperty_get_maxcomponentsize(const icalproperty* prop);icalproperty* icalproperty_vanew_maxcomponentsize(int v, ...); 2196 2197 /* MAXDATE */ 2198 icalproperty* icalproperty_new_maxdate(struct icaltimetype v); 2199 void icalproperty_set_maxdate(icalproperty* prop, struct icaltimetype v); 2200 struct icaltimetype icalproperty_get_maxdate(const icalproperty* prop);icalproperty* icalproperty_vanew_maxdate(struct icaltimetype v, ...); 2201 2202 /* MAXRESULTS */ 2203 icalproperty* icalproperty_new_maxresults(int v); 2204 void icalproperty_set_maxresults(icalproperty* prop, int v); 2205 int icalproperty_get_maxresults(const icalproperty* prop);icalproperty* icalproperty_vanew_maxresults(int v, ...); 2206 2207 /* MAXRESULTSSIZE */ 2208 icalproperty* icalproperty_new_maxresultssize(int v); 2209 void icalproperty_set_maxresultssize(icalproperty* prop, int v); 2210 int icalproperty_get_maxresultssize(const icalproperty* prop);icalproperty* icalproperty_vanew_maxresultssize(int v, ...); 2211 2212 /* METHOD */ 2213 icalproperty* icalproperty_new_method(enum icalproperty_method v); 2214 void icalproperty_set_method(icalproperty* prop, enum icalproperty_method v); 2215 enum icalproperty_method icalproperty_get_method(const icalproperty* prop);icalproperty* icalproperty_vanew_method(enum icalproperty_method v, ...); 2216 2217 /* MINDATE */ 2218 icalproperty* icalproperty_new_mindate(struct icaltimetype v); 2219 void icalproperty_set_mindate(icalproperty* prop, struct icaltimetype v); 2220 struct icaltimetype icalproperty_get_mindate(const icalproperty* prop);icalproperty* icalproperty_vanew_mindate(struct icaltimetype v, ...); 2221 2222 /* MULTIPART */ 2223 icalproperty* icalproperty_new_multipart(const char* v); 2224 void icalproperty_set_multipart(icalproperty* prop, const char* v); 2225 const char* icalproperty_get_multipart(const icalproperty* prop);icalproperty* icalproperty_vanew_multipart(const char* v, ...); 2226 2227 /* NAME */ 2228 icalproperty* icalproperty_new_name(const char* v); 2229 void icalproperty_set_name(icalproperty* prop, const char* v); 2230 const char* icalproperty_get_name(const icalproperty* prop);icalproperty* icalproperty_vanew_name(const char* v, ...); 2231 2232 /* ORGANIZER */ 2233 icalproperty* icalproperty_new_organizer(const char* v); 2234 void icalproperty_set_organizer(icalproperty* prop, const char* v); 2235 const char* icalproperty_get_organizer(const icalproperty* prop);icalproperty* icalproperty_vanew_organizer(const char* v, ...); 2236 2237 /* OWNER */ 2238 icalproperty* icalproperty_new_owner(const char* v); 2239 void icalproperty_set_owner(icalproperty* prop, const char* v); 2240 const char* icalproperty_get_owner(const icalproperty* prop);icalproperty* icalproperty_vanew_owner(const char* v, ...); 2241 2242 /* PERCENT-COMPLETE */ 2243 icalproperty* icalproperty_new_percentcomplete(int v); 2244 void icalproperty_set_percentcomplete(icalproperty* prop, int v); 2245 int icalproperty_get_percentcomplete(const icalproperty* prop);icalproperty* icalproperty_vanew_percentcomplete(int v, ...); 2246 2247 /* PERMISSION */ 2248 icalproperty* icalproperty_new_permission(const char* v); 2249 void icalproperty_set_permission(icalproperty* prop, const char* v); 2250 const char* icalproperty_get_permission(const icalproperty* prop);icalproperty* icalproperty_vanew_permission(const char* v, ...); 2251 2252 /* PRIORITY */ 2253 icalproperty* icalproperty_new_priority(int v); 2254 void icalproperty_set_priority(icalproperty* prop, int v); 2255 int icalproperty_get_priority(const icalproperty* prop);icalproperty* icalproperty_vanew_priority(int v, ...); 2256 2257 /* PRODID */ 2258 icalproperty* icalproperty_new_prodid(const char* v); 2259 void icalproperty_set_prodid(icalproperty* prop, const char* v); 2260 const char* icalproperty_get_prodid(const icalproperty* prop);icalproperty* icalproperty_vanew_prodid(const char* v, ...); 2261 2262 /* QUERY */ 2263 icalproperty* icalproperty_new_query(const char* v); 2264 void icalproperty_set_query(icalproperty* prop, const char* v); 2265 const char* icalproperty_get_query(const icalproperty* prop);icalproperty* icalproperty_vanew_query(const char* v, ...); 2266 2267 /* QUERY-LEVEL */ 2268 icalproperty* icalproperty_new_querylevel(enum icalproperty_querylevel v); 2269 void icalproperty_set_querylevel(icalproperty* prop, enum icalproperty_querylevel v); 2270 enum icalproperty_querylevel icalproperty_get_querylevel(const icalproperty* prop);icalproperty* icalproperty_vanew_querylevel(enum icalproperty_querylevel v, ...); 2271 2272 /* QUERYID */ 2273 icalproperty* icalproperty_new_queryid(const char* v); 2274 void icalproperty_set_queryid(icalproperty* prop, const char* v); 2275 const char* icalproperty_get_queryid(const icalproperty* prop);icalproperty* icalproperty_vanew_queryid(const char* v, ...); 2276 2277 /* QUERYNAME */ 2278 icalproperty* icalproperty_new_queryname(const char* v); 2279 void icalproperty_set_queryname(icalproperty* prop, const char* v); 2280 const char* icalproperty_get_queryname(const icalproperty* prop);icalproperty* icalproperty_vanew_queryname(const char* v, ...); 2281 2282 /* RDATE */ 2283 icalproperty* icalproperty_new_rdate(struct icaldatetimeperiodtype v); 2284 void icalproperty_set_rdate(icalproperty* prop, struct icaldatetimeperiodtype v); 2285 struct icaldatetimeperiodtype icalproperty_get_rdate(const icalproperty* prop);icalproperty* icalproperty_vanew_rdate(struct icaldatetimeperiodtype v, ...); 2286 2287 /* RECUR-ACCEPTED */ 2288 icalproperty* icalproperty_new_recuraccepted(const char* v); 2289 void icalproperty_set_recuraccepted(icalproperty* prop, const char* v); 2290 const char* icalproperty_get_recuraccepted(const icalproperty* prop);icalproperty* icalproperty_vanew_recuraccepted(const char* v, ...); 2291 2292 /* RECUR-EXPAND */ 2293 icalproperty* icalproperty_new_recurexpand(const char* v); 2294 void icalproperty_set_recurexpand(icalproperty* prop, const char* v); 2295 const char* icalproperty_get_recurexpand(const icalproperty* prop);icalproperty* icalproperty_vanew_recurexpand(const char* v, ...); 2296 2297 /* RECUR-LIMIT */ 2298 icalproperty* icalproperty_new_recurlimit(const char* v); 2299 void icalproperty_set_recurlimit(icalproperty* prop, const char* v); 2300 const char* icalproperty_get_recurlimit(const icalproperty* prop);icalproperty* icalproperty_vanew_recurlimit(const char* v, ...); 2301 2302 /* RECURRENCE-ID */ 2303 icalproperty* icalproperty_new_recurrenceid(struct icaltimetype v); 2304 void icalproperty_set_recurrenceid(icalproperty* prop, struct icaltimetype v); 2305 struct icaltimetype icalproperty_get_recurrenceid(const icalproperty* prop);icalproperty* icalproperty_vanew_recurrenceid(struct icaltimetype v, ...); 2306 2307 /* RELATED-TO */ 2308 icalproperty* icalproperty_new_relatedto(const char* v); 2309 void icalproperty_set_relatedto(icalproperty* prop, const char* v); 2310 const char* icalproperty_get_relatedto(const icalproperty* prop);icalproperty* icalproperty_vanew_relatedto(const char* v, ...); 2311 2312 /* RELCALID */ 2313 icalproperty* icalproperty_new_relcalid(const char* v); 2314 void icalproperty_set_relcalid(icalproperty* prop, const char* v); 2315 const char* icalproperty_get_relcalid(const icalproperty* prop);icalproperty* icalproperty_vanew_relcalid(const char* v, ...); 2316 2317 /* REPEAT */ 2318 icalproperty* icalproperty_new_repeat(int v); 2319 void icalproperty_set_repeat(icalproperty* prop, int v); 2320 int icalproperty_get_repeat(const icalproperty* prop);icalproperty* icalproperty_vanew_repeat(int v, ...); 2321 2322 /* REQUEST-STATUS */ 2323 icalproperty* icalproperty_new_requeststatus(struct icalreqstattype v); 2324 void icalproperty_set_requeststatus(icalproperty* prop, struct icalreqstattype v); 2325 struct icalreqstattype icalproperty_get_requeststatus(const icalproperty* prop);icalproperty* icalproperty_vanew_requeststatus(struct icalreqstattype v, ...); 2326 2327 /* RESOURCES */ 2328 icalproperty* icalproperty_new_resources(const char* v); 2329 void icalproperty_set_resources(icalproperty* prop, const char* v); 2330 const char* icalproperty_get_resources(const icalproperty* prop);icalproperty* icalproperty_vanew_resources(const char* v, ...); 2331 2332 /* RESTRICTION */ 2333 icalproperty* icalproperty_new_restriction(const char* v); 2334 void icalproperty_set_restriction(icalproperty* prop, const char* v); 2335 const char* icalproperty_get_restriction(const icalproperty* prop);icalproperty* icalproperty_vanew_restriction(const char* v, ...); 2336 2337 /* RRULE */ 2338 icalproperty* icalproperty_new_rrule(struct icalrecurrencetype v); 2339 void icalproperty_set_rrule(icalproperty* prop, struct icalrecurrencetype v); 2340 struct icalrecurrencetype icalproperty_get_rrule(const icalproperty* prop);icalproperty* icalproperty_vanew_rrule(struct icalrecurrencetype v, ...); 2341 2342 /* SCOPE */ 2343 icalproperty* icalproperty_new_scope(const char* v); 2344 void icalproperty_set_scope(icalproperty* prop, const char* v); 2345 const char* icalproperty_get_scope(const icalproperty* prop);icalproperty* icalproperty_vanew_scope(const char* v, ...); 2346 2347 /* SEQUENCE */ 2348 icalproperty* icalproperty_new_sequence(int v); 2349 void icalproperty_set_sequence(icalproperty* prop, int v); 2350 int icalproperty_get_sequence(const icalproperty* prop);icalproperty* icalproperty_vanew_sequence(int v, ...); 2351 2352 /* STATUS */ 2353 icalproperty* icalproperty_new_status(enum icalproperty_status v); 2354 void icalproperty_set_status(icalproperty* prop, enum icalproperty_status v); 2355 enum icalproperty_status icalproperty_get_status(const icalproperty* prop);icalproperty* icalproperty_vanew_status(enum icalproperty_status v, ...); 2356 2357 /* STORES-EXPANDED */ 2358 icalproperty* icalproperty_new_storesexpanded(const char* v); 2359 void icalproperty_set_storesexpanded(icalproperty* prop, const char* v); 2360 const char* icalproperty_get_storesexpanded(const icalproperty* prop);icalproperty* icalproperty_vanew_storesexpanded(const char* v, ...); 2361 2362 /* SUMMARY */ 2363 icalproperty* icalproperty_new_summary(const char* v); 2364 void icalproperty_set_summary(icalproperty* prop, const char* v); 2365 const char* icalproperty_get_summary(const icalproperty* prop);icalproperty* icalproperty_vanew_summary(const char* v, ...); 2366 2367 /* TARGET */ 2368 icalproperty* icalproperty_new_target(const char* v); 2369 void icalproperty_set_target(icalproperty* prop, const char* v); 2370 const char* icalproperty_get_target(const icalproperty* prop);icalproperty* icalproperty_vanew_target(const char* v, ...); 2371 2372 /* TRANSP */ 2373 icalproperty* icalproperty_new_transp(enum icalproperty_transp v); 2374 void icalproperty_set_transp(icalproperty* prop, enum icalproperty_transp v); 2375 enum icalproperty_transp icalproperty_get_transp(const icalproperty* prop);icalproperty* icalproperty_vanew_transp(enum icalproperty_transp v, ...); 2376 2377 /* TRIGGER */ 2378 icalproperty* icalproperty_new_trigger(struct icaltriggertype v); 2379 void icalproperty_set_trigger(icalproperty* prop, struct icaltriggertype v); 2380 struct icaltriggertype icalproperty_get_trigger(const icalproperty* prop);icalproperty* icalproperty_vanew_trigger(struct icaltriggertype v, ...); 2381 2382 /* TZID */ 2383 icalproperty* icalproperty_new_tzid(const char* v); 2384 void icalproperty_set_tzid(icalproperty* prop, const char* v); 2385 const char* icalproperty_get_tzid(const icalproperty* prop);icalproperty* icalproperty_vanew_tzid(const char* v, ...); 2386 2387 /* TZNAME */ 2388 icalproperty* icalproperty_new_tzname(const char* v); 2389 void icalproperty_set_tzname(icalproperty* prop, const char* v); 2390 const char* icalproperty_get_tzname(const icalproperty* prop);icalproperty* icalproperty_vanew_tzname(const char* v, ...); 2391 2392 /* TZOFFSETFROM */ 2393 icalproperty* icalproperty_new_tzoffsetfrom(int v); 2394 void icalproperty_set_tzoffsetfrom(icalproperty* prop, int v); 2395 int icalproperty_get_tzoffsetfrom(const icalproperty* prop);icalproperty* icalproperty_vanew_tzoffsetfrom(int v, ...); 2396 2397 /* TZOFFSETTO */ 2398 icalproperty* icalproperty_new_tzoffsetto(int v); 2399 void icalproperty_set_tzoffsetto(icalproperty* prop, int v); 2400 int icalproperty_get_tzoffsetto(const icalproperty* prop);icalproperty* icalproperty_vanew_tzoffsetto(int v, ...); 2401 2402 /* TZURL */ 2403 icalproperty* icalproperty_new_tzurl(const char* v); 2404 void icalproperty_set_tzurl(icalproperty* prop, const char* v); 2405 const char* icalproperty_get_tzurl(const icalproperty* prop);icalproperty* icalproperty_vanew_tzurl(const char* v, ...); 2406 2407 /* UID */ 2408 icalproperty* icalproperty_new_uid(const char* v); 2409 void icalproperty_set_uid(icalproperty* prop, const char* v); 2410 const char* icalproperty_get_uid(const icalproperty* prop);icalproperty* icalproperty_vanew_uid(const char* v, ...); 2411 2412 /* URL */ 2413 icalproperty* icalproperty_new_url(const char* v); 2414 void icalproperty_set_url(icalproperty* prop, const char* v); 2415 const char* icalproperty_get_url(const icalproperty* prop);icalproperty* icalproperty_vanew_url(const char* v, ...); 2416 2417 /* VERSION */ 2418 icalproperty* icalproperty_new_version(const char* v); 2419 void icalproperty_set_version(icalproperty* prop, const char* v); 2420 const char* icalproperty_get_version(const icalproperty* prop);icalproperty* icalproperty_vanew_version(const char* v, ...); 2421 2422 /* X */ 2423 icalproperty* icalproperty_new_x(const char* v); 2424 void icalproperty_set_x(icalproperty* prop, const char* v); 2425 const char* icalproperty_get_x(const icalproperty* prop);icalproperty* icalproperty_vanew_x(const char* v, ...); 2426 2427 /* X-LIC-CLASS */ 2428 icalproperty* icalproperty_new_xlicclass(enum icalproperty_xlicclass v); 2429 void icalproperty_set_xlicclass(icalproperty* prop, enum icalproperty_xlicclass v); 2430 enum icalproperty_xlicclass icalproperty_get_xlicclass(const icalproperty* prop);icalproperty* icalproperty_vanew_xlicclass(enum icalproperty_xlicclass v, ...); 2431 2432 /* X-LIC-CLUSTERCOUNT */ 2433 icalproperty* icalproperty_new_xlicclustercount(const char* v); 2434 void icalproperty_set_xlicclustercount(icalproperty* prop, const char* v); 2435 const char* icalproperty_get_xlicclustercount(const icalproperty* prop);icalproperty* icalproperty_vanew_xlicclustercount(const char* v, ...); 2436 2437 /* X-LIC-ERROR */ 2438 icalproperty* icalproperty_new_xlicerror(const char* v); 2439 void icalproperty_set_xlicerror(icalproperty* prop, const char* v); 2440 const char* icalproperty_get_xlicerror(const icalproperty* prop);icalproperty* icalproperty_vanew_xlicerror(const char* v, ...); 2441 2442 /* X-LIC-MIMECHARSET */ 2443 icalproperty* icalproperty_new_xlicmimecharset(const char* v); 2444 void icalproperty_set_xlicmimecharset(icalproperty* prop, const char* v); 2445 const char* icalproperty_get_xlicmimecharset(const icalproperty* prop);icalproperty* icalproperty_vanew_xlicmimecharset(const char* v, ...); 2446 2447 /* X-LIC-MIMECID */ 2448 icalproperty* icalproperty_new_xlicmimecid(const char* v); 2449 void icalproperty_set_xlicmimecid(icalproperty* prop, const char* v); 2450 const char* icalproperty_get_xlicmimecid(const icalproperty* prop);icalproperty* icalproperty_vanew_xlicmimecid(const char* v, ...); 2451 2452 /* X-LIC-MIMECONTENTTYPE */ 2453 icalproperty* icalproperty_new_xlicmimecontenttype(const char* v); 2454 void icalproperty_set_xlicmimecontenttype(icalproperty* prop, const char* v); 2455 const char* icalproperty_get_xlicmimecontenttype(const icalproperty* prop);icalproperty* icalproperty_vanew_xlicmimecontenttype(const char* v, ...); 2456 2457 /* X-LIC-MIMEENCODING */ 2458 icalproperty* icalproperty_new_xlicmimeencoding(const char* v); 2459 void icalproperty_set_xlicmimeencoding(icalproperty* prop, const char* v); 2460 const char* icalproperty_get_xlicmimeencoding(const icalproperty* prop);icalproperty* icalproperty_vanew_xlicmimeencoding(const char* v, ...); 2461 2462 /* X-LIC-MIMEFILENAME */ 2463 icalproperty* icalproperty_new_xlicmimefilename(const char* v); 2464 void icalproperty_set_xlicmimefilename(icalproperty* prop, const char* v); 2465 const char* icalproperty_get_xlicmimefilename(const icalproperty* prop);icalproperty* icalproperty_vanew_xlicmimefilename(const char* v, ...); 2466 2467 /* X-LIC-MIMEOPTINFO */ 2468 icalproperty* icalproperty_new_xlicmimeoptinfo(const char* v); 2469 void icalproperty_set_xlicmimeoptinfo(icalproperty* prop, const char* v); 2470 const char* icalproperty_get_xlicmimeoptinfo(const icalproperty* prop);icalproperty* icalproperty_vanew_xlicmimeoptinfo(const char* v, ...); 2471 2472 2473 #endif /*ICALPROPERTY_H*/ 2474 /* -*- Mode: C -*- */ 2475 /*====================================================================== 2476 FILE: icalproperty.h 2477 CREATOR: eric 20 March 1999 2478 2479 2480 2481 2482 2483 (C) COPYRIGHT 2000, Eric Busboom <eric@softwarestudio.org> 2484 http://www.softwarestudio.org 2485 2486 This program is free software; you can redistribute it and/or modify 2487 it under the terms of either: 2488 2489 The LGPL as published by the Free Software Foundation, version 2490 2.1, available at: http://www.fsf.org/copyleft/lesser.html 2491 2492 Or: 2493 2494 The Mozilla Public License Version 1.0. You may obtain a copy of 2495 the License at http://www.mozilla.org/MPL/ 2496 2497 The original code is icalparam.h 2498 2499 ======================================================================*/ 2500 2501 2502 #ifndef ICALPROPERTY_H 2503 #define ICALPROPERTY_H 2504 2505 #include <time.h> 2506 #include <stdarg.h> /* for va_... */ 2507 2508 2509 2510 /* Actually in icalderivedproperty.h: 2511 typedef struct icalproperty_impl icalproperty; */ 2512 2513 2514 icalproperty* icalproperty_new(icalproperty_kind kind); 2515 2516 icalproperty* icalproperty_new_clone(icalproperty * prop); 2517 2518 icalproperty* icalproperty_new_from_string(const char* str); 2519 2520 const char* icalproperty_as_ical_string(icalproperty* prop); 2521 char* icalproperty_as_ical_string_r(icalproperty* prop); 2522 2523 void icalproperty_free(icalproperty* prop); 2524 2525 icalproperty_kind icalproperty_isa(icalproperty* property); 2526 int icalproperty_isa_property(void* property); 2527 2528 void icalproperty_add_parameters(struct icalproperty_impl *prop,va_list args); 2529 void icalproperty_add_parameter(icalproperty* prop,icalparameter* parameter); 2530 void icalproperty_set_parameter(icalproperty* prop,icalparameter* parameter); 2531 void icalproperty_set_parameter_from_string(icalproperty* prop, 2532 const char* name, const char* value); 2533 const char* icalproperty_get_parameter_as_string(icalproperty* prop, 2534 const char* name); 2535 char* icalproperty_get_parameter_as_string_r(icalproperty* prop, 2536 const char* name); 2537 2538 void icalproperty_remove_parameter(icalproperty* prop, 2539 icalparameter_kind kind); 2540 2541 void icalproperty_remove_parameter_by_kind(icalproperty* prop, 2542 icalparameter_kind kind); 2543 2544 void icalproperty_remove_parameter_by_name(icalproperty* prop, 2545 const char *name); 2546 2547 void icalproperty_remove_parameter_by_ref(icalproperty* prop, 2548 icalparameter *param); 2549 2550 2551 2552 int icalproperty_count_parameters(const icalproperty* prop); 2553 2554 /* Iterate through the parameters */ 2555 icalparameter* icalproperty_get_first_parameter(icalproperty* prop, 2556 icalparameter_kind kind); 2557 icalparameter* icalproperty_get_next_parameter(icalproperty* prop, 2558 icalparameter_kind kind); 2559 /* Access the value of the property */ 2560 void icalproperty_set_value(icalproperty* prop, icalvalue* value); 2561 void icalproperty_set_value_from_string(icalproperty* prop,const char* value, const char* kind); 2562 2563 icalvalue* icalproperty_get_value(const icalproperty* prop); 2564 const char* icalproperty_get_value_as_string(const icalproperty* prop); 2565 char* icalproperty_get_value_as_string_r(const icalproperty* prop); 2566 2567 /* Deal with X properties */ 2568 2569 void icalproperty_set_x_name(icalproperty* prop, const char* name); 2570 const char* icalproperty_get_x_name(icalproperty* prop); 2571 2572 /** Return the name of the property -- the type name converted to a 2573 * string, or the value of _get_x_name if the type is and X 2574 * property 2575 */ 2576 const char* icalproperty_get_property_name (const icalproperty* prop); 2577 char* icalproperty_get_property_name_r(const icalproperty* prop); 2578 2579 icalvalue_kind icalparameter_value_to_value_kind(icalparameter_value value); 2580 2581 /* Convert kinds to string and get default value type */ 2582 2583 icalvalue_kind icalproperty_kind_to_value_kind(icalproperty_kind kind); 2584 icalproperty_kind icalproperty_value_kind_to_kind(icalvalue_kind kind); 2585 const char* icalproperty_kind_to_string(icalproperty_kind kind); 2586 icalproperty_kind icalproperty_string_to_kind(const char* string); 2587 2588 /** Check validity of a specific icalproperty_kind **/ 2589 int icalproperty_kind_is_valid(const icalproperty_kind kind); 2590 2591 icalproperty_method icalproperty_string_to_method(const char* str); 2592 const char* icalproperty_method_to_string(icalproperty_method method); 2593 2594 2595 const char* icalproperty_enum_to_string(int e); 2596 char* icalproperty_enum_to_string_r(int e); 2597 int icalproperty_string_to_enum(const char* str); 2598 int icalproperty_kind_and_string_to_enum(const int kind, const char* str); 2599 2600 const char* icalproperty_status_to_string(icalproperty_status); 2601 icalproperty_status icalproperty_string_to_status(const char* string); 2602 2603 int icalproperty_enum_belongs_to_property(icalproperty_kind kind, int e); 2604 2605 2606 2607 2608 #endif /*ICALPROPERTY_H*/ 2609 /*====================================================================== 2610 FILE: pvl.h 2611 CREATOR: eric November, 1995 2612 2613 2614 (C) COPYRIGHT 2000, Eric Busboom <eric@softwarestudio.org> 2615 http://www.softwarestudio.org 2616 ======================================================================*/ 2617 2618 2619 #ifndef __PVL_H__ 2620 #define __PVL_H__ 2621 2622 typedef struct pvl_list_t* pvl_list; 2623 typedef struct pvl_elem_t* pvl_elem; 2624 2625 /** 2626 * This type is private. Always use pvl_elem instead. The struct would 2627 * not even appear in this header except to make code in the USE_MACROS 2628 * blocks work 2629 */ 2630 2631 typedef struct pvl_elem_t 2632 { 2633 int MAGIC; /**< Magic Identifier */ 2634 void *d; /**< Pointer to data user is storing */ 2635 struct pvl_elem_t *next; /**< Next element */ 2636 struct pvl_elem_t *prior; /**< Prior element */ 2637 } pvl_elem_t; 2638 2639 2640 2641 /** 2642 * This global is incremented for each call to pvl_new_element(); it gives each 2643 * list a unique identifer 2644 */ 2645 2646 extern int pvl_elem_count; 2647 extern int pvl_list_count; 2648 2649 /* Create new lists or elements */ 2650 pvl_elem pvl_new_element(void* d, pvl_elem next,pvl_elem prior); 2651 pvl_list pvl_newlist(void); 2652 void pvl_free(pvl_list); 2653 2654 /* Add, remove, or get the head of the list */ 2655 void pvl_unshift(pvl_list l,void *d); 2656 void* pvl_shift(pvl_list l); 2657 pvl_elem pvl_head(pvl_list); 2658 2659 /* Add, remove or get the tail of the list */ 2660 void pvl_push(pvl_list l,void *d); 2661 void* pvl_pop(pvl_list l); 2662 pvl_elem pvl_tail(pvl_list); 2663 2664 /* Insert elements in random places */ 2665 typedef int (*pvl_comparef)(void* a, void* b); /* a, b are of the data type*/ 2666 void pvl_insert_ordered(pvl_list l,pvl_comparef f,void *d); 2667 void pvl_insert_after(pvl_list l,pvl_elem e,void *d); 2668 void pvl_insert_before(pvl_list l,pvl_elem e,void *d); 2669 2670 /* Remove an element, or clear the entire list */ 2671 void* pvl_remove(pvl_list,pvl_elem); /* Remove element, return data */ 2672 void pvl_clear(pvl_list); /* Remove all elements, de-allocate all data */ 2673 2674 int pvl_count(pvl_list); 2675 2676 /* Navagate the list */ 2677 pvl_elem pvl_next(pvl_elem e); 2678 pvl_elem pvl_prior(pvl_elem e); 2679 2680 /* get the data in the list */ 2681 #ifndef PVL_USE_MACROS 2682 void* pvl_data(pvl_elem); 2683 #else 2684 #define pvl_data(x) x==0 ? 0 : ((struct pvl_elem_t *)x)->d; 2685 #endif 2686 2687 2688 /* Find an element for which a function returns true */ 2689 typedef int (*pvl_findf)(void* a, void* b); /*a is list elem, b is other data*/ 2690 pvl_elem pvl_find(pvl_list l,pvl_findf f,void* v); 2691 pvl_elem pvl_find_next(pvl_list l,pvl_findf f,void* v); 2692 2693 /** 2694 * Pass each element in the list to a function 2695 * a is list elem, b is other data 2696 */ 2697 typedef void (*pvl_applyf)(void* a, void* b); 2698 void pvl_apply(pvl_list l,pvl_applyf f, void *v); 2699 2700 2701 #endif /* __PVL_H__ */ 2702 2703 2704 2705 2706 2707 /* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 4 -*- */ 2708 /*====================================================================== 2709 FILE: icalarray.h 2710 CREATOR: Damon Chaplin 07 March 2001 2711 2712 2713 2714 (C) COPYRIGHT 2001, Ximian, Inc. 2715 2716 This program is free software; you can redistribute it and/or modify 2717 it under the terms of either: 2718 2719 The LGPL as published by the Free Software Foundation, version 2720 2.1, available at: http://www.fsf.org/copyleft/lesser.html 2721 2722 Or: 2723 2724 The Mozilla Public License Version 1.0. You may obtain a copy of 2725 the License at http://www.mozilla.org/MPL/ 2726 2727 2728 ======================================================================*/ 2729 2730 2731 #ifndef ICALARRAY_H 2732 #define ICALARRAY_H 2733 2734 /** @file icalarray.h 2735 * 2736 * @brief An array of arbitrarily-sized elements which grows 2737 * dynamically as elements are added. 2738 */ 2739 2740 typedef struct _icalarray icalarray; 2741 struct _icalarray { 2742 unsigned int element_size; 2743 unsigned int increment_size; 2744 unsigned int num_elements; 2745 unsigned int space_allocated; 2746 void *data; 2747 }; 2748 2749 2750 2751 icalarray *icalarray_new (int element_size, 2752 int increment_size); 2753 void icalarray_free (icalarray *array); 2754 2755 void icalarray_append (icalarray *array, 2756 const void *element); 2757 void icalarray_remove_element_at (icalarray *array, 2758 int position); 2759 2760 void *icalarray_element_at (icalarray *array, 2761 int position); 2762 2763 void icalarray_sort (icalarray *array, 2764 int (*compare) (const void *, const void *)); 2765 2766 2767 #endif /* ICALARRAY_H */ 2768 /* -*- Mode: C -*- */ 2769 /*====================================================================== 2770 FILE: icalcomponent.h 2771 CREATOR: eric 20 March 1999 2772 2773 2774 (C) COPYRIGHT 2000, Eric Busboom <eric@softwarestudio.org> 2775 http://www.softwarestudio.org 2776 2777 This program is free software; you can redistribute it and/or modify 2778 it under the terms of either: 2779 2780 The LGPL as published by the Free Software Foundation, version 2781 2.1, available at: http://www.fsf.org/copyleft/lesser.html 2782 2783 Or: 2784 2785 The Mozilla Public License Version 1.0. You may obtain a copy of 2786 the License at http://www.mozilla.org/MPL/ 2787 2788 The original code is icalcomponent.h 2789 2790 ======================================================================*/ 2791 2792 #ifndef ICALCOMPONENT_H 2793 #define ICALCOMPONENT_H 2794 2795 2796 typedef struct icalcomponent_impl icalcomponent; 2797 2798 #ifndef ICALTIMEZONE_DEFINED 2799 #define ICALTIMEZONE_DEFINED 2800 /** @brief An opaque struct representing a timezone. 2801 * We declare this here to avoid a circular dependancy. 2802 */ 2803 typedef struct _icaltimezone icaltimezone; 2804 #endif 2805 2806 2807 /* This is exposed so that callers will not have to allocate and 2808 deallocate iterators. Pretend that you can't see it. */ 2809 typedef struct icalcompiter 2810 { 2811 icalcomponent_kind kind; 2812 pvl_elem iter; 2813 2814 } icalcompiter; 2815 2816 icalcomponent* icalcomponent_new(icalcomponent_kind kind); 2817 icalcomponent* icalcomponent_new_clone(icalcomponent* component); 2818 icalcomponent* icalcomponent_new_from_string(const char* str); 2819 icalcomponent* icalcomponent_vanew(icalcomponent_kind kind, ...); 2820 icalcomponent* icalcomponent_new_x(const char* x_name); 2821 void icalcomponent_free(icalcomponent* component); 2822 2823 char* icalcomponent_as_ical_string(icalcomponent* component); 2824 char* icalcomponent_as_ical_string_r(icalcomponent* component); 2825 2826 int icalcomponent_is_valid(icalcomponent* component); 2827 2828 icalcomponent_kind icalcomponent_isa(const icalcomponent* component); 2829 2830 int icalcomponent_isa_component (void* component); 2831 2832 /* 2833 * Working with properties 2834 */ 2835 2836 void icalcomponent_add_property(icalcomponent* component, 2837 icalproperty* property); 2838 2839 void icalcomponent_remove_property(icalcomponent* component, 2840 icalproperty* property); 2841 2842 int icalcomponent_count_properties(icalcomponent* component, 2843 icalproperty_kind kind); 2844 2845 /* Iterate through the properties */ 2846 icalproperty* icalcomponent_get_current_property(icalcomponent* component); 2847 2848 icalproperty* icalcomponent_get_first_property(icalcomponent* component, 2849 icalproperty_kind kind); 2850 icalproperty* icalcomponent_get_next_property(icalcomponent* component, 2851 icalproperty_kind kind); 2852 2853 2854 /* 2855 * Working with components 2856 */ 2857 2858 2859 /* Return the first VEVENT, VTODO or VJOURNAL sub-component of cop, or 2860 comp if it is one of those types */ 2861 2862 icalcomponent* icalcomponent_get_inner(icalcomponent* comp); 2863 2864 2865 void icalcomponent_add_component(icalcomponent* parent, 2866 icalcomponent* child); 2867 2868 void icalcomponent_remove_component(icalcomponent* parent, 2869 icalcomponent* child); 2870 2871 int icalcomponent_count_components(icalcomponent* component, 2872 icalcomponent_kind kind); 2873 2874 /** 2875 This takes 2 VCALENDAR components and merges the second one into the first, 2876 resolving any problems with conflicting TZIDs. comp_to_merge will no 2877 longer exist after calling this function. */ 2878 void icalcomponent_merge_component(icalcomponent* comp, 2879 icalcomponent* comp_to_merge); 2880 2881 2882 /* Iteration Routines. There are two forms of iterators, internal and 2883 external. The internal ones came first, and are almost completely 2884 sufficient, but they fail badly when you want to construct a loop that 2885 removes components from the container.*/ 2886 2887 2888 /* Iterate through components */ 2889 icalcomponent* icalcomponent_get_current_component (icalcomponent* component); 2890 2891 icalcomponent* icalcomponent_get_first_component(icalcomponent* component, 2892 icalcomponent_kind kind); 2893 icalcomponent* icalcomponent_get_next_component(icalcomponent* component, 2894 icalcomponent_kind kind); 2895 2896 /* Using external iterators */ 2897 icalcompiter icalcomponent_begin_component(icalcomponent* component, 2898 icalcomponent_kind kind); 2899 icalcompiter icalcomponent_end_component(icalcomponent* component, 2900 icalcomponent_kind kind); 2901 icalcomponent* icalcompiter_next(icalcompiter* i); 2902 icalcomponent* icalcompiter_prior(icalcompiter* i); 2903 icalcomponent* icalcompiter_deref(icalcompiter* i); 2904 2905 2906 /* Working with embedded error properties */ 2907 2908 2909 /* Check the component against itip rules and insert error properties*/ 2910 /* Working with embedded error properties */ 2911 int icalcomponent_check_restrictions(icalcomponent* comp); 2912 2913 /** Count embedded errors. */ 2914 int icalcomponent_count_errors(icalcomponent* component); 2915 2916 /** Remove all X-LIC-ERROR properties*/ 2917 void icalcomponent_strip_errors(icalcomponent* component); 2918 2919 /** Convert some X-LIC-ERROR properties into RETURN-STATUS properties*/ 2920 void icalcomponent_convert_errors(icalcomponent* component); 2921 2922 /* Internal operations. They are private, and you should not be using them. */ 2923 icalcomponent* icalcomponent_get_parent(icalcomponent* component); 2924 void icalcomponent_set_parent(icalcomponent* component, 2925 icalcomponent* parent); 2926 2927 /* Kind conversion routines */ 2928 2929 int icalcomponent_kind_is_valid(const icalcomponent_kind kind); 2930 2931 icalcomponent_kind icalcomponent_string_to_kind(const char* string); 2932 2933 const char* icalcomponent_kind_to_string(icalcomponent_kind kind); 2934 2935 2936 /************* Derived class methods. **************************** 2937 2938 If the code was in an OO language, the remaining routines would be 2939 members of classes derived from icalcomponent. Don't call them on the 2940 wrong component subtypes. */ 2941 2942 /** For VCOMPONENT: Return a reference to the first VEVENT, VTODO or 2943 VJOURNAL */ 2944 icalcomponent* icalcomponent_get_first_real_component(icalcomponent *c); 2945 2946 /** For VEVENT, VTODO, VJOURNAL and VTIMEZONE: report the start and end 2947 times of an event in UTC */ 2948 struct icaltime_span icalcomponent_get_span(icalcomponent* comp); 2949 2950 /******************** Convienience routines **********************/ 2951 2952 void icalcomponent_set_dtstart(icalcomponent* comp, struct icaltimetype v); 2953 struct icaltimetype icalcomponent_get_dtstart(icalcomponent* comp); 2954 2955 /* For the icalcomponent routines only, dtend and duration are tied 2956 together. If you call the set routine for one and the other exists, 2957 the routine will calculate the change to the other. That is, if 2958 there is a DTEND and you call set_duration, the routine will modify 2959 DTEND to be the sum of DTSTART and the duration. If you call a get 2960 routine for one and the other exists, the routine will calculate 2961 the return value. If you call a set routine and neither exists, the 2962 routine will create the apcompriate comperty */ 2963 2964 2965 struct icaltimetype icalcomponent_get_dtend(icalcomponent* comp); 2966 void icalcomponent_set_dtend(icalcomponent* comp, struct icaltimetype v); 2967 2968 struct icaltimetype icalcomponent_get_due(icalcomponent* comp); 2969 void icalcomponent_set_due(icalcomponent* comp, struct icaltimetype v); 2970 2971 void icalcomponent_set_duration(icalcomponent* comp, 2972 struct icaldurationtype v); 2973 struct icaldurationtype icalcomponent_get_duration(icalcomponent* comp); 2974 2975 void icalcomponent_set_method(icalcomponent* comp, icalproperty_method method); 2976 icalproperty_method icalcomponent_get_method(icalcomponent* comp); 2977 2978 struct icaltimetype icalcomponent_get_dtstamp(icalcomponent* comp); 2979 void icalcomponent_set_dtstamp(icalcomponent* comp, struct icaltimetype v); 2980 2981 void icalcomponent_set_summary(icalcomponent* comp, const char* v); 2982 const char* icalcomponent_get_summary(icalcomponent* comp); 2983 2984 void icalcomponent_set_comment(icalcomponent* comp, const char* v); 2985 const char* icalcomponent_get_comment(icalcomponent* comp); 2986 2987 void icalcomponent_set_uid(icalcomponent* comp, const char* v); 2988 const char* icalcomponent_get_uid(icalcomponent* comp); 2989 2990 void icalcomponent_set_relcalid(icalcomponent* comp, const char* v); 2991 const char* icalcomponent_get_relcalid(icalcomponent* comp); 2992 2993 void icalcomponent_set_recurrenceid(icalcomponent* comp, 2994 struct icaltimetype v); 2995 struct icaltimetype icalcomponent_get_recurrenceid(icalcomponent* comp); 2996 2997 void icalcomponent_set_description(icalcomponent* comp, const char* v); 2998 const char* icalcomponent_get_description(icalcomponent* comp); 2999 3000 void icalcomponent_set_location(icalcomponent* comp, const char* v); 3001 const char* icalcomponent_get_location(icalcomponent* comp); 3002 3003 void icalcomponent_set_sequence(icalcomponent* comp, int v); 3004 int icalcomponent_get_sequence(icalcomponent* comp); 3005 3006 void icalcomponent_set_status(icalcomponent* comp, enum icalproperty_status v); 3007 enum icalproperty_status icalcomponent_get_status(icalcomponent* comp); 3008 3009 3010 /** Calls the given function for each TZID parameter found in the 3011 component, and any subcomponents. */ 3012 void icalcomponent_foreach_tzid(icalcomponent* comp, 3013 void (*callback)(icalparameter *param, void *data), 3014 void *callback_data); 3015 3016 /** Returns the icaltimezone in the component corresponding to the 3017 TZID, or NULL if it can't be found. */ 3018 icaltimezone* icalcomponent_get_timezone(icalcomponent* comp, 3019 const char *tzid); 3020 3021 int icalproperty_recurrence_is_excluded(icalcomponent *comp, 3022 struct icaltimetype *dtstart, 3023 struct icaltimetype *recurtime); 3024 3025 void icalcomponent_foreach_recurrence(icalcomponent* comp, 3026 struct icaltimetype start, 3027 struct icaltimetype end, 3028 void (*callback)(icalcomponent *comp, 3029 struct icaltime_span *span, 3030 void *data), 3031 void *callback_data); 3032 3033 3034 /*************** Type Specific routines ***************/ 3035 3036 icalcomponent* icalcomponent_new_vcalendar(); 3037 icalcomponent* icalcomponent_new_vevent(); 3038 icalcomponent* icalcomponent_new_vtodo(); 3039 icalcomponent* icalcomponent_new_vjournal(); 3040 icalcomponent* icalcomponent_new_valarm(); 3041 icalcomponent* icalcomponent_new_vfreebusy(); 3042 icalcomponent* icalcomponent_new_vtimezone(); 3043 icalcomponent* icalcomponent_new_xstandard(); 3044 icalcomponent* icalcomponent_new_xdaylight(); 3045 icalcomponent* icalcomponent_new_vagenda(); 3046 icalcomponent* icalcomponent_new_vquery(); 3047 3048 #endif /* !ICALCOMPONENT_H */ 3049 /* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 4 -*- */ 3050 /*====================================================================== 3051 FILE: icaltimezone.h 3052 CREATOR: Damon Chaplin 15 March 2001 3053 3054 3055 3056 (C) COPYRIGHT 2001, Damon Chaplin 3057 3058 This program is free software; you can redistribute it and/or modify 3059 it under the terms of either: 3060 3061 The LGPL as published by the Free Software Foundation, version 3062 2.1, available at: http://www.fsf.org/copyleft/lesser.html 3063 3064 Or: 3065 3066 The Mozilla Public License Version 1.0. You may obtain a copy of 3067 the License at http://www.mozilla.org/MPL/ 3068 3069 3070 ======================================================================*/ 3071 /** 3072 * @file icaltimezone.h 3073 * @brief timezone handling routines 3074 */ 3075 3076 #ifndef ICALTIMEZONE_H 3077 #define ICALTIMEZONE_H 3078 3079 #include <stdio.h> /* For FILE* */ 3080 3081 3082 #ifndef ICALTIMEZONE_DEFINED 3083 #define ICALTIMEZONE_DEFINED 3084 /** @brief An opaque struct representing a timezone. 3085 * We declare this here to avoid a circular dependancy. 3086 */ 3087 typedef struct _icaltimezone icaltimezone; 3088 #endif 3089 3090 /** 3091 * @par Creating/Destroying individual icaltimezones. 3092 */ 3093 3094 /** Creates a new icaltimezone. */ 3095 icaltimezone *icaltimezone_new (void); 3096 icaltimezone *icaltimezone_copy (icaltimezone *originalzone); 3097 3098 /** Frees all memory used for the icaltimezone. Set free_struct to free the 3099 icaltimezone struct as well. */ 3100 void icaltimezone_free (icaltimezone *zone, 3101 int free_struct); 3102 3103 3104 /** 3105 * @par Accessing timezones. 3106 */ 3107 3108 /** Free any builtin timezone information **/ 3109 void icaltimezone_free_builtin_timezones(void); 3110 3111 /** Returns the array of builtin icaltimezones. */ 3112 icalarray* icaltimezone_get_builtin_timezones (void); 3113 3114 /** Returns a single builtin timezone, given its Olson city name. */ 3115 icaltimezone* icaltimezone_get_builtin_timezone (const char *location); 3116 3117 /** Returns a single builtin timezone, given its offset. */ 3118 icaltimezone* icaltimezone_get_builtin_timezone_from_offset (int offset, const char *tzname); 3119 3120 /** Returns a single builtin timezone, given its TZID. */ 3121 icaltimezone* icaltimezone_get_builtin_timezone_from_tzid (const char *tzid); 3122 3123 /** Returns the UTC timezone. */ 3124 icaltimezone* icaltimezone_get_utc_timezone (void); 3125 3126 /** Returns the TZID of a timezone. */ 3127 const char* icaltimezone_get_tzid (icaltimezone *zone); 3128 3129 /** Returns the city name of a timezone. */ 3130 const char* icaltimezone_get_location (icaltimezone *zone); 3131 3132 /** Returns the TZNAME properties used in the latest STANDARD and DAYLIGHT 3133 components. If they are the same it will return just one, e.g. "LMT". 3134 If they are different it will format them like "EST/EDT". Note that this 3135 may also return NULL. */ 3136 const char* icaltimezone_get_tznames (icaltimezone *zone); 3137 3138 /** Returns the latitude of a builtin timezone. */ 3139 double icaltimezone_get_latitude (icaltimezone *zone); 3140 3141 /** Returns the longitude of a builtin timezone. */ 3142 double icaltimezone_get_longitude (icaltimezone *zone); 3143 3144 /** Returns the VTIMEZONE component of a timezone. */ 3145 icalcomponent* icaltimezone_get_component (icaltimezone *zone); 3146 3147 /** Sets the VTIMEZONE component of an icaltimezone, initializing the tzid, 3148 location & tzname fields. It returns 1 on success or 0 on failure, i.e. 3149 no TZID was found. */ 3150 int icaltimezone_set_component (icaltimezone *zone, 3151 icalcomponent *comp); 3152 3153 const char* icaltimezone_get_display_name (icaltimezone *zone); 3154 3155 /** 3156 * @par Converting times between timezones. 3157 */ 3158 3159 void icaltimezone_convert_time (struct icaltimetype *tt, 3160 icaltimezone *from_zone, 3161 icaltimezone *to_zone); 3162 3163 3164 /** 3165 * @par Getting offsets from UTC. 3166 */ 3167 3168 /** Calculates the UTC offset of a given local time in the given 3169 timezone. It is the number of seconds to add to UTC to get local 3170 time. The is_daylight flag is set to 1 if the time is in 3171 daylight-savings time. */ 3172 int icaltimezone_get_utc_offset (icaltimezone *zone, 3173 struct icaltimetype *tt, 3174 int *is_daylight); 3175 3176 /** Calculates the UTC offset of a given UTC time in the given 3177 timezone. It is the number of seconds to add to UTC to get local 3178 time. The is_daylight flag is set to 1 if the time is in 3179 daylight-savings time. */ 3180 int icaltimezone_get_utc_offset_of_utc_time (icaltimezone *zone, 3181 struct icaltimetype *tt, 3182 int *is_daylight); 3183 3184 3185 3186 /* 3187 * Handling arrays of timezones. Mainly for internal use. 3188 */ 3189 icalarray* icaltimezone_array_new (void); 3190 3191 void icaltimezone_array_append_from_vtimezone (icalarray *timezones, 3192 icalcomponent *child); 3193 void icaltimezone_array_free (icalarray *timezones); 3194 3195 3196 /* 3197 * @par Handling the default location the timezone files 3198 */ 3199 3200 /** Set the directory to look for the zonefiles */ 3201 void set_zone_directory(char *path); 3202 3203 /** Free memory dedicated to the zonefile directory */ 3204 void free_zone_directory(void); 3205 void icaltimezone_release_zone_tab(void); 3206 3207 /* 3208 * @par Debugging Output. 3209 */ 3210 3211 /** Dumps information about changes in the timezone up to and including 3212 max_year. */ 3213 int icaltimezone_dump_changes (icaltimezone *zone, 3214 int max_year, 3215 FILE *fp); 3216 3217 #endif /* ICALTIMEZONE_H */ 3218 /* -*- Mode: C -*- */ 3219 /*====================================================================== 3220 FILE: icalparser.h 3221 CREATOR: eric 20 April 1999 3222 3223 3224 3225 (C) COPYRIGHT 2000, Eric Busboom <eric@softwarestudio.org> 3226 http://www.softwarestudio.org 3227 3228 This program is free software; you can redistribute it and/or modify 3229 it under the terms of either: 3230 3231 The LGPL as published by the Free Software Foundation, version 3232 2.1, available at: http://www.fsf.org/copyleft/lesser.html 3233 3234 Or: 3235 3236 The Mozilla Public License Version 1.0. You may obtain a copy of 3237 the License at http://www.mozilla.org/MPL/ 3238 3239 The original code is icalparser.h 3240 3241 ======================================================================*/ 3242 3243 3244 #ifndef ICALPARSER_H 3245 #define ICALPARSER_H 3246 3247 3248 #include <stdio.h> /* For FILE* */ 3249 3250 typedef struct icalparser_impl icalparser; 3251 3252 3253 /** 3254 * @file icalparser.h 3255 * @brief Line-oriented parsing. 3256 * 3257 * Create a new parser via icalparse_new_parser, then add lines one at 3258 * a time with icalparse_add_line(). icalparser_add_line() will return 3259 * non-zero when it has finished with a component. 3260 */ 3261 3262 typedef enum icalparser_state { 3263 ICALPARSER_ERROR, 3264 ICALPARSER_SUCCESS, 3265 ICALPARSER_BEGIN_COMP, 3266 ICALPARSER_END_COMP, 3267 ICALPARSER_IN_PROGRESS 3268 } icalparser_state; 3269 3270 icalparser* icalparser_new(void); 3271 icalcomponent* icalparser_add_line(icalparser* parser, char* str ); 3272 icalcomponent* icalparser_clean(icalparser* parser); 3273 icalparser_state icalparser_get_state(icalparser* parser); 3274 void icalparser_free(icalparser* parser); 3275 3276 3277 /** 3278 * Message oriented parsing. icalparser_parse takes a string that 3279 * holds the text ( in RFC 2445 format ) and returns a pointer to an 3280 * icalcomponent. The caller owns the memory. line_gen_func is a 3281 * pointer to a function that returns one content line per invocation 3282 */ 3283 3284 icalcomponent* icalparser_parse(icalparser *parser, 3285 char* (*line_gen_func)(char *s, size_t size, void *d)); 3286 3287 /** 3288 Set the data that icalparser_parse will give to the line_gen_func 3289 as the parameter 'd' 3290 */ 3291 void icalparser_set_gen_data(icalparser* parser, void* data); 3292 3293 3294 icalcomponent* icalparser_parse_string(const char* str); 3295 3296 3297 /*********************************************************************** 3298 * Parser support functions 3299 ***********************************************************************/ 3300 3301 /** Use the flex/bison parser to turn a string into a value type */ 3302 icalvalue* icalparser_parse_value(icalvalue_kind kind, 3303 const char* str, icalcomponent** errors); 3304 3305 /** Given a line generator function, return a single iCal content line.*/ 3306 char* icalparser_get_line(icalparser* parser, char* (*line_gen_func)(char *s, size_t size, void *d)); 3307 3308 char* icalparser_string_line_generator(char *out, size_t buf_size, void *d); 3309 3310 #endif /* !ICALPARSE_H */ 3311 /* -*- Mode: C -*- */ 3312 /*====================================================================== 3313 FILE: icalmemory.h 3314 CREATOR: eric 30 June 1999 3315 3316 3317 3318 This program is free software; you can redistribute it and/or modify 3319 it under the terms of either: 3320 3321 The LGPL as published by the Free Software Foundation, version 3322 2.1, available at: http://www.fsf.org/copyleft/lesser.html 3323 3324 Or: 3325 3326 The Mozilla Public License Version 1.0. You may obtain a copy of 3327 the License at http://www.mozilla.org/MPL/ 3328 3329 The Initial Developer of the Original Code is Eric Busboom 3330 3331 (C) COPYRIGHT 2000, Eric Busboom <eric@softwarestudio.org> 3332 http://www.softwarestudio.org 3333 ======================================================================*/ 3334 3335 #ifndef ICALMEMORY_H 3336 #define ICALMEMORY_H 3337 3338 #ifndef WIN32 3339 #include <sys/types.h> /* for size_t */ 3340 #else 3341 #include <stddef.h> 3342 #endif 3343 3344 /* Tmp buffers are managed by ical. References can be returned to the 3345 caller, although the caller will not own the memory. */ 3346 3347 void* icalmemory_tmp_buffer(size_t size); 3348 char* icalmemory_tmp_copy(const char* str); 3349 3350 /** Add an externally allocated buffer to the ring. */ 3351 void icalmemory_add_tmp_buffer(void*); 3352 3353 3354 /** Free all memory used in the ring */ 3355 void icalmemory_free_ring(void); 3356 3357 /* Non-tmp buffers must be freed. These are mostly wrappers around 3358 * malloc, etc, but are used so the caller can change the memory 3359 * allocators in a future version of the library */ 3360 3361 void* icalmemory_new_buffer(size_t size); 3362 void* icalmemory_resize_buffer(void* buf, size_t size); 3363 void icalmemory_free_buffer(void* buf); 3364 3365 /** 3366 icalmemory_append_string will copy the string 'string' to the 3367 buffer 'buf' starting at position 'pos', reallocing 'buf' if it is 3368 too small. 'buf_size' is the size of 'buf' and will be changed if 3369 'buf' is reallocated. 'pos' will point to the last byte of the new 3370 string in 'buf', usually a '\0' */ 3371 3372 /* THESE ROUTINES CAN NOT BE USED ON TMP BUFFERS. Only use them on 3373 normally allocated memory, or on buffers created from 3374 icalmemory_new_buffer, never with buffers created by 3375 icalmemory_tmp_buffer. If icalmemory_append_string has to resize a 3376 buffer on the ring, the ring will loose track of it an you will 3377 have memory problems. */ 3378 3379 void icalmemory_append_string(char** buf, char** pos, size_t* buf_size, 3380 const char* string); 3381 3382 /** icalmemory_append_char is similar, but is appends a character instead of a string */ 3383 void icalmemory_append_char(char** buf, char** pos, size_t* buf_size, 3384 char ch); 3385 3386 /** A wrapper around strdup. Partly to trap calls to strdup, partly 3387 because in -ansi, gcc on Red Hat claims that strdup is undeclared */ 3388 char* icalmemory_strdup(const char *s); 3389 3390 #endif /* !ICALMEMORY_H */ 3391 3392 3393 3394 /* -*- Mode: C -*- */ 3395 /*====================================================================== 3396 FILE: icalerror.h 3397 CREATOR: eric 09 May 1999 3398 3399 3400 3401 (C) COPYRIGHT 2000, Eric Busboom <eric@softwarestudio.org> 3402 http://www.softwarestudio.org 3403 3404 This program is free software; you can redistribute it and/or modify 3405 it under the terms of either: 3406 3407 The LGPL as published by the Free Software Foundation, version 3408 2.1, available at: http://www.fsf.org/copyleft/lesser.html 3409 3410 Or: 3411 3412 The Mozilla Public License Version 1.0. You may obtain a copy of 3413 the License at http://www.mozilla.org/MPL/ 3414 3415 The original code is icalerror.h 3416 3417 ======================================================================*/ 3418 3419 3420 #ifndef ICALERROR_H 3421 #define ICALERROR_H 3422 3423 #include <assert.h> 3424 #include <stdio.h> /* For icalerror_warn() */ 3425 3426 3427 #ifdef HAVE_CONFIG_H 3428 #endif 3429 3430 #define ICAL_SETERROR_ISFUNC 3431 3432 3433 /** This routine is called before any error is triggered. It is called 3434 by icalerror_set_errno, so it does not appear in all of the macros 3435 below */ 3436 void icalerror_stop_here(void); 3437 3438 void icalerror_crash_here(void); 3439 3440 typedef enum icalerrorenum { 3441 ICAL_NO_ERROR, /* icalerrno may not be initialized - put it first so and pray that the compiler initialize things to zero */ 3442 ICAL_BADARG_ERROR, 3443 ICAL_NEWFAILED_ERROR, 3444 ICAL_ALLOCATION_ERROR, 3445 ICAL_MALFORMEDDATA_ERROR, 3446 ICAL_PARSE_ERROR, 3447 ICAL_INTERNAL_ERROR, /* Like assert --internal consist. prob */ 3448 ICAL_FILE_ERROR, 3449 ICAL_USAGE_ERROR, 3450 ICAL_UNIMPLEMENTED_ERROR, 3451 ICAL_UNKNOWN_ERROR /* Used for problems in input to icalerror_strerror()*/ 3452 3453 } icalerrorenum; 3454 3455 icalerrorenum * icalerrno_return(void); 3456 #define icalerrno (*(icalerrno_return())) 3457 3458 /** If true, libicl aborts after a call to icalerror_set_error 3459 * 3460 * @warning NOT THREAD SAFE -- recommended that you do not change 3461 * this in a multithreaded program. 3462 */ 3463 extern int icalerror_errors_are_fatal; 3464 3465 /* Warning messages */ 3466 3467 #ifdef __GNUC__ca 3468 #define icalerror_warn(message) {fprintf(stderr,"%s(), %s:%d: %s\n",__FUNCTION__,__FILE__,__LINE__,message);} 3469 #else /* __GNU_C__ */ 3470 #define icalerror_warn(message) {fprintf(stderr,"%s:%d: %s\n",__FILE__,__LINE__,message);} 3471 #endif /* __GNU_C__ */ 3472 3473 3474 void icalerror_clear_errno(void); 3475 void _icalerror_set_errno(icalerrorenum); 3476 3477 /* Make an individual error fatal or non-fatal. */ 3478 typedef enum icalerrorstate { 3479 ICAL_ERROR_FATAL, /* Not fata */ 3480 ICAL_ERROR_NONFATAL, /* Fatal */ 3481 ICAL_ERROR_DEFAULT, /* Use the value of icalerror_errors_are_fatal*/ 3482 ICAL_ERROR_UNKNOWN /* Asked state for an unknown error type */ 3483 } icalerrorstate ; 3484 3485 const char* icalerror_strerror(icalerrorenum e); 3486 const char* icalerror_perror(); 3487 void ical_bt(void); 3488 void icalerror_set_error_state( icalerrorenum error, icalerrorstate); 3489 icalerrorstate icalerror_get_error_state( icalerrorenum error); 3490 3491 #ifndef ICAL_SETERROR_ISFUNC 3492 #define icalerror_set_errno(x) \ 3493 icalerrno = x; \ 3494 if(icalerror_get_error_state(x)==ICAL_ERROR_FATAL || \ 3495 (icalerror_get_error_state(x)==ICAL_ERROR_DEFAULT && \ 3496 icalerror_errors_are_fatal == 1 )){ \ 3497 icalerror_warn(icalerror_strerror(x)); \ 3498 ical_bt(); \ 3499 assert(0); \ 3500 } } 3501 #else 3502 void icalerror_set_errno(icalerrorenum x); 3503 #endif 3504 3505 #ifdef ICAL_ERRORS_ARE_FATAL 3506 #undef NDEBUG 3507 #endif 3508 3509 #define icalerror_check_value_type(value,type); 3510 #define icalerror_check_property_type(value,type); 3511 #define icalerror_check_parameter_type(value,type); 3512 #define icalerror_check_component_type(value,type); 3513 3514 /* Assert with a message */ 3515 #ifdef ICAL_ERRORS_ARE_FATAL 3516 3517 #ifdef __GNUC__ 3518 #define icalerror_assert(test,message) if(!(test)){fprintf(stderr,"%s(), %s:%d: %s\n",__FUNCTION__,__FILE__,__LINE__,message);icalerror_stop_here(); abort();} 3519 #else /*__GNUC__*/ 3520 #define icalerror_assert(test,message) if(!(test)){fprintf(stderr,"%s:%d: %s\n",__FILE__,__LINE__,message);icalerror_stop_here(); abort();} 3521 #endif /*__GNUC__*/ 3522 3523 #else /* ICAL_ERRORS_ARE_FATAL */ 3524 #define icalerror_assert(test,message) 3525 #endif /* ICAL_ERRORS_ARE_FATAL */ 3526 3527 /* Check & abort if check fails */ 3528 #define icalerror_check_arg(test,arg) if(!(test)) { icalerror_set_errno(ICAL_BADARG_ERROR); } 3529 3530 /* Check & return void if check fails*/ 3531 #define icalerror_check_arg_rv(test,arg) if(!(test)) {icalerror_set_errno(ICAL_BADARG_ERROR); return; } 3532 3533 /* Check & return 0 if check fails*/ 3534 #define icalerror_check_arg_rz(test,arg) if(!(test)) { icalerror_set_errno(ICAL_BADARG_ERROR); return 0;} 3535 3536 /* Check & return an error if check fails*/ 3537 #define icalerror_check_arg_re(test,arg,error) if(!(test)) { icalerror_stop_here(); assert(0); return error;} 3538 3539 /* Check & return something*/ 3540 #define icalerror_check_arg_rx(test,arg,x) if(!(test)) { icalerror_set_errno(ICAL_BADARG_ERROR); return x;} 3541 3542 3543 3544 /* String interfaces to set an error to NONFATAL and restore it to its 3545 original value */ 3546 3547 icalerrorstate icalerror_supress(const char* error); 3548 void icalerror_restore(const char* error, icalerrorstate es); 3549 3550 3551 #endif /* !ICALERROR_H */ 3552 3553 3554 3555 /* -*- Mode: C -*- */ 3556 /*====================================================================== 3557 FILE: icalrestriction.h 3558 CREATOR: eric 24 April 1999 3559 3560 3561 3562 (C) COPYRIGHT 2000, Eric Busboom <eric@softwarestudio.org> 3563 http://www.softwarestudio.org 3564 3565 This program is free software; you can redistribute it and/or modify 3566 it under the terms of either: 3567 3568 The LGPL as published by the Free Software Foundation, version 3569 2.1, available at: http://www.fsf.org/copyleft/lesser.html 3570 3571 Or: 3572 3573 The Mozilla Public License Version 1.0. You may obtain a copy of 3574 the License at http://www.mozilla.org/MPL/ 3575 3576 The original code is icalrestriction.h 3577 3578 Contributions from: 3579 Graham Davison (g.m.davison@computer.org) 3580 3581 3582 ======================================================================*/ 3583 3584 3585 #ifndef ICALRESTRICTION_H 3586 #define ICALRESTRICTION_H 3587 3588 /* These must stay in this order for icalrestriction_compare to work */ 3589 typedef enum icalrestriction_kind { 3590 ICAL_RESTRICTION_NONE=0, /* 0 */ 3591 ICAL_RESTRICTION_ZERO, /* 1 */ 3592 ICAL_RESTRICTION_ONE, /* 2 */ 3593 ICAL_RESTRICTION_ZEROPLUS, /* 3 */ 3594 ICAL_RESTRICTION_ONEPLUS, /* 4 */ 3595 ICAL_RESTRICTION_ZEROORONE, /* 5 */ 3596 ICAL_RESTRICTION_ONEEXCLUSIVE, /* 6 */ 3597 ICAL_RESTRICTION_ONEMUTUAL, /* 7 */ 3598 ICAL_RESTRICTION_UNKNOWN /* 8 */ 3599 } icalrestriction_kind; 3600 3601 int 3602 icalrestriction_compare(icalrestriction_kind restr, int count); 3603 3604 3605 int 3606 icalrestriction_is_parameter_allowed(icalproperty_kind property, 3607 icalparameter_kind parameter); 3608 3609 int icalrestriction_check(icalcomponent* comp); 3610 3611 3612 #endif /* !ICALRESTRICTION_H */ 3613 3614 3615 3616 /* -*- Mode: C -*- 3617 ====================================================================== 3618 FILE: sspm.h Mime Parser 3619 CREATOR: eric 25 June 2000 3620 3621 3622 (C) COPYRIGHT 2000, Eric Busboom <eric@softwarestudio.org> 3623 http://www.softwarestudio.org 3624 3625 The contents of this file are subject to the Mozilla Public License 3626 Version 1.0 (the "License"); you may not use this file except in 3627 compliance with the License. You may obtain a copy of the License at 3628 http://www.mozilla.org/MPL/ 3629 3630 Software distributed under the License is distributed on an "AS IS" 3631 basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See 3632 the License for the specific language governing rights and 3633 limitations under the License. 3634 3635 3636 This program is free software; you can redistribute it and/or modify 3637 it under the terms of either: 3638 3639 The LGPL as published by the Free Software Foundation, version 3640 2.1, available at: http://www.fsf.org/copyleft/lesser.html 3641 3642 Or: 3643 3644 The Mozilla Public License Version 1.0. You may obtain a copy of 3645 the License at http://www.mozilla.org/MPL/ 3646 3647 The Initial Developer of the Original Code is Eric Busboom 3648 3649 (C) COPYRIGHT 2000, Eric Busboom, http://www.softwarestudio.org 3650 ======================================================================*/ 3651 3652 #ifndef SSPM_H 3653 #define SSPM_H 3654 3655 enum sspm_major_type { 3656 SSPM_NO_MAJOR_TYPE, 3657 SSPM_TEXT_MAJOR_TYPE, 3658 SSPM_IMAGE_MAJOR_TYPE, 3659 SSPM_AUDIO_MAJOR_TYPE, 3660 SSPM_VIDEO_MAJOR_TYPE, 3661 SSPM_APPLICATION_MAJOR_TYPE, 3662 SSPM_MULTIPART_MAJOR_TYPE, 3663 SSPM_MESSAGE_MAJOR_TYPE, 3664 SSPM_UNKNOWN_MAJOR_TYPE 3665 }; 3666 3667 enum sspm_minor_type { 3668 SSPM_NO_MINOR_TYPE, 3669 SSPM_ANY_MINOR_TYPE, 3670 SSPM_PLAIN_MINOR_TYPE, 3671 SSPM_RFC822_MINOR_TYPE, 3672 SSPM_DIGEST_MINOR_TYPE, 3673 SSPM_CALENDAR_MINOR_TYPE, 3674 SSPM_MIXED_MINOR_TYPE, 3675 SSPM_RELATED_MINOR_TYPE, 3676 SSPM_ALTERNATIVE_MINOR_TYPE, 3677 SSPM_PARALLEL_MINOR_TYPE, 3678 SSPM_UNKNOWN_MINOR_TYPE 3679 }; 3680 3681 enum sspm_encoding { 3682 SSPM_NO_ENCODING, 3683 SSPM_QUOTED_PRINTABLE_ENCODING, 3684 SSPM_8BIT_ENCODING, 3685 SSPM_7BIT_ENCODING, 3686 SSPM_BINARY_ENCODING, 3687 SSPM_BASE64_ENCODING, 3688 SSPM_UNKNOWN_ENCODING 3689 }; 3690 3691 enum sspm_error{ 3692 SSPM_NO_ERROR, 3693 SSPM_UNEXPECTED_BOUNDARY_ERROR, 3694 SSPM_WRONG_BOUNDARY_ERROR, 3695 SSPM_NO_BOUNDARY_ERROR, 3696 SSPM_NO_HEADER_ERROR, 3697 SSPM_MALFORMED_HEADER_ERROR 3698 }; 3699 3700 3701 struct sspm_header 3702 { 3703 int def; 3704 char* boundary; 3705 enum sspm_major_type major; 3706 enum sspm_minor_type minor; 3707 char *minor_text; 3708 char ** content_type_params; 3709 char* charset; 3710 enum sspm_encoding encoding; 3711 char* filename; 3712 char* content_id; 3713 enum sspm_error error; 3714 char* error_text; 3715 }; 3716 3717 struct sspm_part { 3718 struct sspm_header header; 3719 int level; 3720 size_t data_size; 3721 void *data; 3722 }; 3723 3724 struct sspm_action_map { 3725 enum sspm_major_type major; 3726 enum sspm_minor_type minor; 3727 void* (*new_part)(); 3728 void (*add_line)(void *part, struct sspm_header *header, 3729 const char* line, size_t size); 3730 void* (*end_part)(void* part); 3731 void (*free_part)(void *part); 3732 }; 3733 3734 const char* sspm_major_type_string(enum sspm_major_type type); 3735 const char* sspm_minor_type_string(enum sspm_minor_type type); 3736 const char* sspm_encoding_string(enum sspm_encoding type); 3737 3738 int sspm_parse_mime(struct sspm_part *parts, 3739 size_t max_parts, 3740 const struct sspm_action_map *actions, 3741 char* (*get_string)(char *s, size_t size, void* data), 3742 void *get_string_data, 3743 struct sspm_header *first_header 3744 ); 3745 3746 void sspm_free_parts(struct sspm_part *parts, size_t max_parts); 3747 3748 char *decode_quoted_printable(char *dest, 3749 char *src, 3750 size_t *size); 3751 char *decode_base64(char *dest, 3752 char *src, 3753 size_t *size); 3754 3755 3756 int sspm_write_mime(struct sspm_part *parts,size_t num_parts, 3757 char **output_string, const char* header); 3758 3759 #endif /*SSPM_H*/ 3760 /* -*- Mode: C -*- */ 3761 /*====================================================================== 3762 FILE: icalmime.h 3763 CREATOR: eric 26 July 2000 3764 3765 3766 3767 (C) COPYRIGHT 2000, Eric Busboom <eric@softwarestudio.org> 3768 http://www.softwarestudio.org 3769 3770 This program is free software; you can redistribute it and/or modify 3771 it under the terms of either: 3772 3773 The LGPL as published by the Free Software Foundation, version 3774 2.1, available at: http://www.fsf.org/copyleft/lesser.html 3775 3776 Or: 3777 3778 The Mozilla Public License Version 1.0. You may obtain a copy of 3779 the License at http://www.mozilla.org/MPL/ 3780 3781 ======================================================================*/ 3782 3783 #ifndef ICALMIME_H 3784 #define ICALMIME_H 3785 3786 3787 icalcomponent* icalmime_parse( char* (*line_gen_func)(char *s, size_t size, 3788 void *d), 3789 void *data); 3790 3791 /* The inverse of icalmime_parse, not implemented yet. Use sspm.h directly. */ 3792 char* icalmime_as_mime_string(char* component); 3793 3794 3795 3796 #endif /* !ICALMIME_H */ 3797 3798 3799 3800 /* -*- Mode: C -*- 3801 ====================================================================== 3802 FILE: icallangbind.h 3803 CREATOR: eric 25 jan 2001 3804 3805 DESCRIPTION: 3806 3807 3808 (C) COPYRIGHT 1999 Eric Busboom 3809 http://www.softwarestudio.org 3810 3811 This package is free software and is provided "as is" without 3812 express or implied warranty. It may be used, redistributed and/or 3813 modified under the same terms as perl itself. ( Either the Artistic 3814 License or the GPL. ) 3815 3816 ======================================================================*/ 3817 3818 #ifndef __ICALLANGBIND_H__ 3819 #define __ICALLANGBIND_H__ 3820 3821 int* icallangbind_new_array(int size); 3822 void icallangbind_free_array(int* array); 3823 int icallangbind_access_array(int* array, int index); 3824 icalproperty* icallangbind_get_property(icalcomponent *c, int n, const char* prop); 3825 const char* icallangbind_get_property_val(icalproperty* p); 3826 const char* icallangbind_get_parameter(icalproperty *p, const char* parameter); 3827 icalcomponent* icallangbind_get_component(icalcomponent *c, const char* comp); 3828 3829 icalproperty* icallangbind_get_first_property(icalcomponent *c, 3830 const char* prop); 3831 3832 icalproperty* icallangbind_get_next_property(icalcomponent *c, 3833 const char* prop); 3834 3835 icalcomponent* icallangbind_get_first_component(icalcomponent *c, 3836 const char* comp); 3837 3838 icalcomponent* icallangbind_get_next_component(icalcomponent *c, 3839 const char* comp); 3840 3841 icalparameter* icallangbind_get_first_parameter(icalproperty *prop); 3842 3843 icalparameter* icallangbind_get_next_parameter(icalproperty *prop); 3844 3845 const char* icallangbind_property_eval_string(icalproperty* prop, char* sep); 3846 char* icallangbind_property_eval_string_r(icalproperty* prop, char* sep); 3847 3848 3849 int icallangbind_string_to_open_flag(const char* str); 3850 3851 const char* icallangbind_quote_as_ical(const char* str); 3852 char* icallangbind_quote_as_ical_r(const char* str); 3853 #endif /*__ICALLANGBIND_H__*/ 3854 #ifdef __cplusplus 3855 } 3856 #endif 3857 #endif -
src/libical/icalrestriction.c
diff -Nurb libical-0.42.orig/src/libical/icalrestriction.c libical-0.42/src/libical/icalrestriction.c
old new 1 /* -*- Mode: C -*- */ 2 /* ====================================================================== 3 File: icalrestriction.c 4 5 (C) COPYRIGHT 2000, Eric Busboom, http://www.softwarestudio.org 6 ======================================================================*/ 7 /*#line 7 "icalrestriction.c.in"*/ 8 9 #ifdef HAVE_CONFIG_H 10 #include <config.h> 11 #endif 12 13 #include "icalrestriction.h" 14 #include "icalenums.h" 15 #include "icalerror.h" 16 17 #include <assert.h> 18 #include <stdio.h> /* For snprintf */ 19 20 #define TMP_BUF_SIZE 1024 21 22 /* Define the structs for the restrictions. these data are filled out 23 in machine generated code below */ 24 25 struct icalrestriction_property_record; 26 27 typedef const char* (*restriction_func)(const struct icalrestriction_property_record* rec,icalcomponent* comp,icalproperty* prop); 28 29 30 typedef struct icalrestriction_property_record { 31 icalproperty_method method; 32 icalcomponent_kind component; 33 icalproperty_kind property; 34 icalrestriction_kind restriction; 35 restriction_func function; 36 } icalrestriction_property_record; 37 38 39 typedef struct icalrestriction_component_record { 40 icalproperty_method method; 41 icalcomponent_kind component; 42 icalcomponent_kind subcomponent; 43 icalrestriction_kind restriction; 44 restriction_func function; 45 } icalrestriction_component_record; 46 47 static const icalrestriction_property_record* 48 icalrestriction_get_property_restriction(icalproperty_method method, 49 icalcomponent_kind component, 50 icalproperty_kind property); 51 static const icalrestriction_component_record* 52 icalrestriction_get_component_restriction(icalproperty_method method, 53 icalcomponent_kind component, 54 icalcomponent_kind subcomponent); 55 56 icalrestriction_property_record null_prop_record = {ICAL_METHOD_NONE,ICAL_NO_COMPONENT,ICAL_NO_PROPERTY,ICAL_RESTRICTION_UNKNOWN,0}; 57 icalrestriction_component_record null_comp_record = {ICAL_METHOD_NONE,ICAL_NO_COMPONENT,ICAL_NO_COMPONENT,ICAL_RESTRICTION_UNKNOWN,0}; 58 59 60 /** Each row gives the result of comparing a restriction against a count. 61 The columns in each row represent 0,1,2+. '-1' indicates 62 'invalid, 'don't care' or 'needs more analysis' So, for 63 ICAL_RESTRICTION_ONE, if there is 1 of a property with that 64 restriction, it passes, but if there are 0 or 2+, it fails. */ 65 66 char compare_map[ICAL_RESTRICTION_UNKNOWN+1][3] = { 67 { 1, 1, 1},/*ICAL_RESTRICTION_NONE*/ 68 { 1, 0, 0},/*ICAL_RESTRICTION_ZERO*/ 69 { 0, 1, 0},/*ICAL_RESTRICTION_ONE*/ 70 { 1, 1, 1},/*ICAL_RESTRICTION_ZEROPLUS*/ 71 { 0, 1, 1},/*ICAL_RESTRICTION_ONEPLUS*/ 72 { 1, 1, 0},/*ICAL_RESTRICTION_ZEROORONE*/ 73 { 1, 1, 0},/*ICAL_RESTRICTION_ONEEXCLUSIVE*/ 74 { 1, 1, 0},/*ICAL_RESTRICTION_ONEMUTUAL*/ 75 { 1, 1, 1} /*ICAL_RESTRICTION_UNKNOWN*/ 76 }; 77 78 const char restr_string_map[ICAL_RESTRICTION_UNKNOWN+1][60] = { 79 "unknown number",/*ICAL_RESTRICTION_NONE*/ 80 "0",/*ICAL_RESTRICTION_ZERO*/ 81 "1",/*ICAL_RESTRICTION_ONE*/ 82 "zero or more",/*ICAL_RESTRICTION_ZEROPLUS*/ 83 "one or more" ,/*ICAL_RESTRICTION_ONEPLUS*/ 84 "zero or one",/*ICAL_RESTRICTION_ZEROORONE*/ 85 "zero or one, exclusive with another property",/*ICAL_RESTRICTION_ONEEXCLUSIVE*/ 86 "zero or one, mutual with another property",/*ICAL_RESTRICTION_ONEMUTUAL*/ 87 "unknown number" /*ICAL_RESTRICTION_UNKNOWN*/ 88 }; 89 90 91 int 92 icalrestriction_compare(icalrestriction_kind restr, int count){ 93 94 /* restr is an unsigned int, ICAL_RESTRICTION_NONE == 0, so the check will always return false */ 95 if ( /*restr < ICAL_RESTRICTION_NONE ||*/ restr > ICAL_RESTRICTION_UNKNOWN 96 || count < 0){ 97 return -1; 98 } 99 100 if (count > 2) { 101 count = 2; 102 } 103 104 return compare_map[restr][count]; 105 106 } 107 108 /* Special case routines */ 109 110 const char* icalrestriction_may_be_draft_final_canceled( 111 const icalrestriction_property_record *rec, 112 icalcomponent* comp, 113 icalproperty* prop) 114 { 115 icalproperty_status stat = icalproperty_get_status(prop); 116 (void)rec; 117 (void)comp; 118 119 if( !( stat == ICAL_STATUS_DRAFT || 120 stat == ICAL_STATUS_FINAL || 121 stat == ICAL_STATUS_CANCELLED )){ 122 123 return "Failed iTIP restrictions for STATUS property. Value must be one of DRAFT, FINAL, or CANCELED"; 124 125 } 126 127 return 0; 128 } 129 130 const char* icalrestriction_may_be_comp_need_process( 131 const icalrestriction_property_record *rec, 132 icalcomponent* comp, 133 icalproperty* prop) 134 { 135 icalproperty_status stat = icalproperty_get_status(prop); 136 (void)rec; 137 (void)comp; 138 139 if( !( stat == ICAL_STATUS_COMPLETED || 140 stat == ICAL_STATUS_NEEDSACTION || 141 stat == ICAL_STATUS_INPROCESS )){ 142 143 return "Failed iTIP restrictions for STATUS property. Value must be one of COMPLETED, NEEDS-ACTION or IN-PROCESS"; 144 145 } 146 147 return 0; 148 } 149 const char* icalrestriction_may_be_tent_conf(const icalrestriction_property_record *rec, 150 icalcomponent* comp, 151 icalproperty* prop) 152 { 153 icalproperty_status stat = icalproperty_get_status(prop); 154 155 (void)rec; 156 (void)comp; 157 158 if( !( stat == ICAL_STATUS_TENTATIVE || 159 stat == ICAL_STATUS_CONFIRMED )){ 160 161 return "Failed iTIP restrictions for STATUS property. Value must be one of TENTATIVE or CONFIRMED"; 162 163 } 164 165 return 0; 166 } 167 const char* icalrestriction_may_be_tent_conf_cancel( 168 const icalrestriction_property_record *rec, 169 icalcomponent* comp, 170 icalproperty* prop) 171 { 172 icalproperty_status stat = icalproperty_get_status(prop); 173 174 (void)rec; 175 (void)comp; 176 177 if( !( stat == ICAL_STATUS_TENTATIVE || 178 stat == ICAL_STATUS_CONFIRMED || 179 stat == ICAL_STATUS_CANCELLED )){ 180 181 return "Failed iTIP restrictions for STATUS property. Value must be one of TENTATIVE, CONFIRMED or CANCELED"; 182 183 } 184 185 return 0; 186 } 187 188 const char* icalrestriction_must_be_cancel_if_present( 189 const icalrestriction_property_record *rec, 190 icalcomponent* comp, 191 icalproperty* prop) 192 { 193 /* This routine will not be called if prop == 0 */ 194 icalproperty_status stat = icalproperty_get_status(prop); 195 (void)rec; 196 (void)comp; 197 198 if( stat != ICAL_STATUS_CANCELLED) 199 { 200 return "Failed iTIP restrictions for STATUS property. Value must be CANCELLED"; 201 202 } 203 204 205 return 0; 206 } 207 208 const char* icalrestriction_must_be_canceled_no_attendee( 209 const icalrestriction_property_record *rec, 210 icalcomponent* comp, 211 icalproperty* prop) 212 { 213 (void)rec; 214 (void)comp; 215 (void)prop; 216 217 /* Hack. see rfc2446, 3.2.5 CANCEL for porperty STATUS. I don't 218 understand the note */ 219 220 return 0; 221 } 222 223 const char* icalrestriction_must_be_recurring( 224 const icalrestriction_property_record *rec, 225 icalcomponent* comp, 226 icalproperty* prop){ 227 /* Hack */ 228 (void)rec; 229 (void)comp; 230 (void)prop; 231 return 0; 232 } 233 234 const char* icalrestriction_must_have_duration( 235 const icalrestriction_property_record *rec, 236 icalcomponent* comp, 237 icalproperty* prop) 238 { 239 if( !icalcomponent_get_first_property(comp,ICAL_DURATION_PROPERTY)){ 240 241 return "Failed iTIP restrictions for DURATION property. This component must have a DURATION property"; 242 243 } 244 245 return 0; 246 } 247 248 const char* icalrestriction_must_have_repeat( 249 const icalrestriction_property_record *rec, 250 icalcomponent* comp, 251 icalproperty* prop) 252 { 253 (void)rec; 254 (void)prop; 255 if( !icalcomponent_get_first_property(comp,ICAL_REPEAT_PROPERTY)){ 256 257 return "Failed iTIP restrictions for REPEAT property. This component must have a REPEAT property"; 258 259 } 260 261 return 0; 262 } 263 264 const char* icalrestriction_must_if_tz_ref( 265 const icalrestriction_property_record *rec, 266 icalcomponent* comp, 267 icalproperty* prop){ 268 269 /* Hack */ 270 (void)rec; 271 (void)comp; 272 (void)prop; 273 return 0; 274 } 275 276 const char* icalrestriction_no_dtend( 277 const icalrestriction_property_record *rec, 278 icalcomponent* comp, 279 icalproperty* prop) 280 { 281 282 (void)rec; 283 (void)prop; 284 if( !icalcomponent_get_first_property(comp,ICAL_DTEND_PROPERTY)){ 285 286 return "Failed iTIP restrictions for DTEND property. The component must not have both DURATION and DTEND"; 287 288 } 289 290 return 0; 291 } 292 293 const char* icalrestriction_no_duration( 294 const icalrestriction_property_record *rec, 295 icalcomponent* comp, 296 icalproperty* prop) 297 { 298 (void)rec; 299 (void)comp; 300 (void)prop; 301 302 /* _no_dtend takes care of this one */ 303 return 0; 304 } 305 306 const char* icalrestriction_must_be_email( 307 const icalrestriction_property_record *rec, 308 icalcomponent* comp, 309 icalproperty* prop) 310 { 311 icalproperty_action stat = icalproperty_get_action(prop); 312 313 (void)rec; 314 (void)comp; 315 316 if( !( stat == ICAL_ACTION_EMAIL)){ 317 318 return "Failed iTIP restrictions for ACTION property. Value must be EMAIL."; 319 320 } 321 322 return 0; 323 } 324 325 int icalrestriction_check_component(icalproperty_method method, 326 icalcomponent* comp) 327 { 328 icalproperty_kind kind; 329 icalcomponent_kind comp_kind; 330 icalrestriction_kind restr; 331 const icalrestriction_property_record *prop_record; 332 const char* funcr = 0; 333 icalproperty *prop; 334 335 int count; 336 int compare; 337 int valid = 1; 338 339 comp_kind = icalcomponent_isa(comp); 340 341 /* Check all of the properties in this component */ 342 343 for(kind = ICAL_ANY_PROPERTY+1; kind != ICAL_NO_PROPERTY; kind++){ 344 count = icalcomponent_count_properties(comp, kind); 345 346 prop_record = icalrestriction_get_property_restriction(method, 347 comp_kind, 348 kind); 349 350 restr = prop_record->restriction; 351 352 if(restr == ICAL_RESTRICTION_ONEEXCLUSIVE || 353 restr == ICAL_RESTRICTION_ONEMUTUAL) { 354 355 /* First treat is as a 0/1 restriction */ 356 restr = ICAL_RESTRICTION_ZEROORONE; 357 compare = icalrestriction_compare(restr,count); 358 359 } else { 360 361 compare = icalrestriction_compare(restr,count); 362 } 363 364 assert(compare != -1); 365 366 if (compare == 0){ 367 char temp[TMP_BUF_SIZE]; 368 369 snprintf(temp, TMP_BUF_SIZE,"Failed iTIP restrictions for %s property. Expected %s instances of the property and got %d", 370 icalenum_property_kind_to_string(kind), 371 restr_string_map[restr], count); 372 373 icalcomponent_add_property 374 (comp, 375 icalproperty_vanew_xlicerror( 376 temp, 377 icalparameter_new_xlicerrortype(ICAL_XLICERRORTYPE_INVALIDITIP), 378 0)); 379 } 380 381 382 prop = icalcomponent_get_first_property(comp, kind); 383 384 if (prop != 0 && prop_record->function !=0 ){ 385 funcr = prop_record->function(prop_record,comp,prop); 386 } 387 388 if(funcr !=0){ 389 icalcomponent_add_property 390 (comp, 391 icalproperty_vanew_xlicerror( 392 funcr, 393 icalparameter_new_xlicerrortype( 394 ICAL_XLICERRORTYPE_INVALIDITIP), 395 0)); 396 397 compare = 0; 398 } 399 400 valid = valid && compare; 401 } 402 403 404 405 return valid; 406 407 408 } 409 410 int icalrestriction_check(icalcomponent* outer_comp) 411 { 412 icalcomponent_kind comp_kind; 413 icalproperty_method method; 414 icalcomponent* inner_comp; 415 icalproperty *method_prop; 416 int valid; 417 418 icalerror_check_arg_rz( (outer_comp!=0), "outer comp"); 419 420 421 /* Get the Method value from the outer component */ 422 423 comp_kind = icalcomponent_isa(outer_comp); 424 425 if (comp_kind != ICAL_VCALENDAR_COMPONENT){ 426 icalerror_set_errno(ICAL_BADARG_ERROR); 427 return 0; 428 } 429 430 method_prop = icalcomponent_get_first_property(outer_comp, 431 ICAL_METHOD_PROPERTY); 432 433 if (method_prop == 0){ 434 method = ICAL_METHOD_NONE; 435 } else { 436 method = icalproperty_get_method(method_prop); 437 } 438 439 440 /* Check the VCALENDAR wrapper */ 441 valid = icalrestriction_check_component(ICAL_METHOD_NONE,outer_comp); 442 443 444 /* Now check the inner components */ 445 446 for(inner_comp= icalcomponent_get_first_component(outer_comp, 447 ICAL_ANY_COMPONENT); 448 inner_comp != 0; 449 inner_comp= icalcomponent_get_next_component(outer_comp, 450 ICAL_ANY_COMPONENT)){ 451 452 valid = valid && icalrestriction_check_component(method,inner_comp); 453 454 } 455 456 457 return valid; 458 459 } 460 461 static const icalrestriction_property_record icalrestriction_property_records[] = { 462 {ICAL_METHOD_PUBLISH,ICAL_VEVENT_COMPONENT,ICAL_DTSTAMP_PROPERTY,ICAL_RESTRICTION_ONE,0}, 463 {ICAL_METHOD_PUBLISH,ICAL_VEVENT_COMPONENT,ICAL_DTSTART_PROPERTY,ICAL_RESTRICTION_ONE,0}, 464 {ICAL_METHOD_PUBLISH,ICAL_VEVENT_COMPONENT,ICAL_ORGANIZER_PROPERTY,ICAL_RESTRICTION_ONE,0}, 465 {ICAL_METHOD_PUBLISH,ICAL_VEVENT_COMPONENT,ICAL_SUMMARY_PROPERTY,ICAL_RESTRICTION_ONE,0}, 466 {ICAL_METHOD_PUBLISH,ICAL_VEVENT_COMPONENT,ICAL_UID_PROPERTY,ICAL_RESTRICTION_ONE,0}, 467 {ICAL_METHOD_PUBLISH,ICAL_VEVENT_COMPONENT,ICAL_RECURRENCEID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,icalrestriction_must_be_recurring}, 468 {ICAL_METHOD_PUBLISH,ICAL_VEVENT_COMPONENT,ICAL_SEQUENCE_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 469 {ICAL_METHOD_PUBLISH,ICAL_VEVENT_COMPONENT,ICAL_ATTACH_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 470 {ICAL_METHOD_PUBLISH,ICAL_VEVENT_COMPONENT,ICAL_CATEGORIES_PROPERTY,ICAL_RESTRICTION_ZEROPLUS ,0}, 471 {ICAL_METHOD_PUBLISH,ICAL_VEVENT_COMPONENT,ICAL_CLASS_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 472 {ICAL_METHOD_PUBLISH,ICAL_VEVENT_COMPONENT,ICAL_COMMENT_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 473 {ICAL_METHOD_PUBLISH,ICAL_VEVENT_COMPONENT,ICAL_CONTACT_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 474 {ICAL_METHOD_PUBLISH,ICAL_VEVENT_COMPONENT,ICAL_CREATED_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 475 {ICAL_METHOD_PUBLISH,ICAL_VEVENT_COMPONENT,ICAL_DESCRIPTION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 476 {ICAL_METHOD_PUBLISH,ICAL_VEVENT_COMPONENT,ICAL_DTEND_PROPERTY,ICAL_RESTRICTION_ONEEXCLUSIVE,icalrestriction_no_duration}, 477 {ICAL_METHOD_PUBLISH,ICAL_VEVENT_COMPONENT,ICAL_DURATION_PROPERTY,ICAL_RESTRICTION_ONEEXCLUSIVE,icalrestriction_no_dtend}, 478 {ICAL_METHOD_PUBLISH,ICAL_VEVENT_COMPONENT,ICAL_EXDATE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 479 {ICAL_METHOD_PUBLISH,ICAL_VEVENT_COMPONENT,ICAL_EXRULE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 480 {ICAL_METHOD_PUBLISH,ICAL_VEVENT_COMPONENT,ICAL_GEO_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 481 {ICAL_METHOD_PUBLISH,ICAL_VEVENT_COMPONENT,ICAL_LASTMODIFIED_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 482 {ICAL_METHOD_PUBLISH,ICAL_VEVENT_COMPONENT,ICAL_LOCATION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 483 {ICAL_METHOD_PUBLISH,ICAL_VEVENT_COMPONENT,ICAL_PRIORITY_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 484 {ICAL_METHOD_PUBLISH,ICAL_VEVENT_COMPONENT,ICAL_RDATE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 485 {ICAL_METHOD_PUBLISH,ICAL_VEVENT_COMPONENT,ICAL_RELATEDTO_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 486 {ICAL_METHOD_PUBLISH,ICAL_VEVENT_COMPONENT,ICAL_RESOURCES_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 487 {ICAL_METHOD_PUBLISH,ICAL_VEVENT_COMPONENT,ICAL_RRULE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 488 {ICAL_METHOD_PUBLISH,ICAL_VEVENT_COMPONENT,ICAL_STATUS_PROPERTY,ICAL_RESTRICTION_ZEROORONE,icalrestriction_may_be_tent_conf_cancel}, 489 {ICAL_METHOD_PUBLISH,ICAL_VEVENT_COMPONENT,ICAL_TRANSP_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 490 {ICAL_METHOD_PUBLISH,ICAL_VEVENT_COMPONENT,ICAL_URL_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 491 {ICAL_METHOD_PUBLISH,ICAL_VEVENT_COMPONENT,ICAL_X_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 492 {ICAL_METHOD_PUBLISH,ICAL_VEVENT_COMPONENT,ICAL_ATTENDEE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 493 {ICAL_METHOD_PUBLISH,ICAL_VEVENT_COMPONENT,ICAL_REQUESTSTATUS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 494 {ICAL_METHOD_PUBLISH,ICAL_VEVENT_COMPONENT,ICAL_RELCALID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 495 {ICAL_METHOD_REQUEST,ICAL_VEVENT_COMPONENT,ICAL_ATTENDEE_PROPERTY,ICAL_RESTRICTION_ONEPLUS,0}, 496 {ICAL_METHOD_REQUEST,ICAL_VEVENT_COMPONENT,ICAL_DTSTAMP_PROPERTY,ICAL_RESTRICTION_ONE,0}, 497 {ICAL_METHOD_REQUEST,ICAL_VEVENT_COMPONENT,ICAL_DTSTART_PROPERTY,ICAL_RESTRICTION_ONE,0}, 498 {ICAL_METHOD_REQUEST,ICAL_VEVENT_COMPONENT,ICAL_ORGANIZER_PROPERTY,ICAL_RESTRICTION_ONE,0}, 499 {ICAL_METHOD_REQUEST,ICAL_VEVENT_COMPONENT,ICAL_SEQUENCE_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 500 {ICAL_METHOD_REQUEST,ICAL_VEVENT_COMPONENT,ICAL_SUMMARY_PROPERTY,ICAL_RESTRICTION_ONE,0}, 501 {ICAL_METHOD_REQUEST,ICAL_VEVENT_COMPONENT,ICAL_UID_PROPERTY,ICAL_RESTRICTION_ONE,0}, 502 {ICAL_METHOD_REQUEST,ICAL_VEVENT_COMPONENT,ICAL_ATTACH_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 503 {ICAL_METHOD_REQUEST,ICAL_VEVENT_COMPONENT,ICAL_CATEGORIES_PROPERTY,ICAL_RESTRICTION_ZEROPLUS ,0}, 504 {ICAL_METHOD_REQUEST,ICAL_VEVENT_COMPONENT,ICAL_CLASS_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 505 {ICAL_METHOD_REQUEST,ICAL_VEVENT_COMPONENT,ICAL_COMMENT_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 506 {ICAL_METHOD_REQUEST,ICAL_VEVENT_COMPONENT,ICAL_CONTACT_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 507 {ICAL_METHOD_REQUEST,ICAL_VEVENT_COMPONENT,ICAL_CREATED_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 508 {ICAL_METHOD_REQUEST,ICAL_VEVENT_COMPONENT,ICAL_DESCRIPTION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 509 {ICAL_METHOD_REQUEST,ICAL_VEVENT_COMPONENT,ICAL_DTEND_PROPERTY,ICAL_RESTRICTION_ONEEXCLUSIVE,icalrestriction_no_duration}, 510 {ICAL_METHOD_REQUEST,ICAL_VEVENT_COMPONENT,ICAL_DURATION_PROPERTY,ICAL_RESTRICTION_ONEEXCLUSIVE,icalrestriction_no_dtend}, 511 {ICAL_METHOD_REQUEST,ICAL_VEVENT_COMPONENT,ICAL_EXDATE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 512 {ICAL_METHOD_REQUEST,ICAL_VEVENT_COMPONENT,ICAL_EXRULE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 513 {ICAL_METHOD_REQUEST,ICAL_VEVENT_COMPONENT,ICAL_GEO_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 514 {ICAL_METHOD_REQUEST,ICAL_VEVENT_COMPONENT,ICAL_LASTMODIFIED_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 515 {ICAL_METHOD_REQUEST,ICAL_VEVENT_COMPONENT,ICAL_LOCATION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 516 {ICAL_METHOD_REQUEST,ICAL_VEVENT_COMPONENT,ICAL_PRIORITY_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 517 {ICAL_METHOD_REQUEST,ICAL_VEVENT_COMPONENT,ICAL_RDATE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 518 {ICAL_METHOD_REQUEST,ICAL_VEVENT_COMPONENT,ICAL_RECURRENCEID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,icalrestriction_must_be_recurring}, 519 {ICAL_METHOD_REQUEST,ICAL_VEVENT_COMPONENT,ICAL_RELATEDTO_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 520 {ICAL_METHOD_REQUEST,ICAL_VEVENT_COMPONENT,ICAL_REQUESTSTATUS_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 521 {ICAL_METHOD_REQUEST,ICAL_VEVENT_COMPONENT,ICAL_RESOURCES_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 522 {ICAL_METHOD_REQUEST,ICAL_VEVENT_COMPONENT,ICAL_RRULE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 523 {ICAL_METHOD_REQUEST,ICAL_VEVENT_COMPONENT,ICAL_STATUS_PROPERTY,ICAL_RESTRICTION_ZEROORONE,icalrestriction_may_be_tent_conf}, 524 {ICAL_METHOD_REQUEST,ICAL_VEVENT_COMPONENT,ICAL_TRANSP_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 525 {ICAL_METHOD_REQUEST,ICAL_VEVENT_COMPONENT,ICAL_URL_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 526 {ICAL_METHOD_REQUEST,ICAL_VEVENT_COMPONENT,ICAL_X_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 527 {ICAL_METHOD_REQUEST,ICAL_VEVENT_COMPONENT,ICAL_RELCALID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 528 {ICAL_METHOD_REPLY,ICAL_VEVENT_COMPONENT,ICAL_ATTENDEE_PROPERTY,ICAL_RESTRICTION_ONE,0}, 529 {ICAL_METHOD_REPLY,ICAL_VEVENT_COMPONENT,ICAL_DTSTAMP_PROPERTY,ICAL_RESTRICTION_ONE,0}, 530 {ICAL_METHOD_REPLY,ICAL_VEVENT_COMPONENT,ICAL_ORGANIZER_PROPERTY,ICAL_RESTRICTION_ONE,0}, 531 {ICAL_METHOD_REPLY,ICAL_VEVENT_COMPONENT,ICAL_RECURRENCEID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,icalrestriction_must_be_recurring}, 532 {ICAL_METHOD_REPLY,ICAL_VEVENT_COMPONENT,ICAL_UID_PROPERTY,ICAL_RESTRICTION_ONE,0}, 533 {ICAL_METHOD_REPLY,ICAL_VEVENT_COMPONENT,ICAL_SEQUENCE_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 534 {ICAL_METHOD_REPLY,ICAL_VEVENT_COMPONENT,ICAL_ATTACH_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 535 {ICAL_METHOD_REPLY,ICAL_VEVENT_COMPONENT,ICAL_CATEGORIES_PROPERTY,ICAL_RESTRICTION_ZEROPLUS ,0}, 536 {ICAL_METHOD_REPLY,ICAL_VEVENT_COMPONENT,ICAL_CLASS_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 537 {ICAL_METHOD_REPLY,ICAL_VEVENT_COMPONENT,ICAL_COMMENT_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 538 {ICAL_METHOD_REPLY,ICAL_VEVENT_COMPONENT,ICAL_CONTACT_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 539 {ICAL_METHOD_REPLY,ICAL_VEVENT_COMPONENT,ICAL_CREATED_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 540 {ICAL_METHOD_REPLY,ICAL_VEVENT_COMPONENT,ICAL_DESCRIPTION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 541 {ICAL_METHOD_REPLY,ICAL_VEVENT_COMPONENT,ICAL_DTEND_PROPERTY,ICAL_RESTRICTION_ONEEXCLUSIVE,icalrestriction_no_duration}, 542 {ICAL_METHOD_REPLY,ICAL_VEVENT_COMPONENT,ICAL_DTSTART_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 543 {ICAL_METHOD_REPLY,ICAL_VEVENT_COMPONENT,ICAL_DURATION_PROPERTY,ICAL_RESTRICTION_ONEEXCLUSIVE,icalrestriction_no_dtend}, 544 {ICAL_METHOD_REPLY,ICAL_VEVENT_COMPONENT,ICAL_EXDATE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 545 {ICAL_METHOD_REPLY,ICAL_VEVENT_COMPONENT,ICAL_EXRULE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 546 {ICAL_METHOD_REPLY,ICAL_VEVENT_COMPONENT,ICAL_GEO_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 547 {ICAL_METHOD_REPLY,ICAL_VEVENT_COMPONENT,ICAL_LASTMODIFIED_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 548 {ICAL_METHOD_REPLY,ICAL_VEVENT_COMPONENT,ICAL_LOCATION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 549 {ICAL_METHOD_REPLY,ICAL_VEVENT_COMPONENT,ICAL_PRIORITY_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 550 {ICAL_METHOD_REPLY,ICAL_VEVENT_COMPONENT,ICAL_RDATE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 551 {ICAL_METHOD_REPLY,ICAL_VEVENT_COMPONENT,ICAL_RELATEDTO_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 552 {ICAL_METHOD_REPLY,ICAL_VEVENT_COMPONENT,ICAL_RESOURCES_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 553 {ICAL_METHOD_REPLY,ICAL_VEVENT_COMPONENT,ICAL_REQUESTSTATUS_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 554 {ICAL_METHOD_REPLY,ICAL_VEVENT_COMPONENT,ICAL_RRULE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 555 {ICAL_METHOD_REPLY,ICAL_VEVENT_COMPONENT,ICAL_STATUS_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 556 {ICAL_METHOD_REPLY,ICAL_VEVENT_COMPONENT,ICAL_SUMMARY_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 557 {ICAL_METHOD_REPLY,ICAL_VEVENT_COMPONENT,ICAL_TRANSP_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 558 {ICAL_METHOD_REPLY,ICAL_VEVENT_COMPONENT,ICAL_URL_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 559 {ICAL_METHOD_REPLY,ICAL_VEVENT_COMPONENT,ICAL_X_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 560 {ICAL_METHOD_REPLY,ICAL_VEVENT_COMPONENT,ICAL_RELCALID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 561 {ICAL_METHOD_ADD,ICAL_VEVENT_COMPONENT,ICAL_DTSTAMP_PROPERTY,ICAL_RESTRICTION_ONE,0}, 562 {ICAL_METHOD_ADD,ICAL_VEVENT_COMPONENT,ICAL_DTSTART_PROPERTY,ICAL_RESTRICTION_ONE,0}, 563 {ICAL_METHOD_ADD,ICAL_VEVENT_COMPONENT,ICAL_ORGANIZER_PROPERTY,ICAL_RESTRICTION_ONE,0}, 564 {ICAL_METHOD_ADD,ICAL_VEVENT_COMPONENT,ICAL_SEQUENCE_PROPERTY,ICAL_RESTRICTION_ONE,0}, 565 {ICAL_METHOD_ADD,ICAL_VEVENT_COMPONENT,ICAL_SUMMARY_PROPERTY,ICAL_RESTRICTION_ONE,0}, 566 {ICAL_METHOD_ADD,ICAL_VEVENT_COMPONENT,ICAL_UID_PROPERTY,ICAL_RESTRICTION_ONE,0}, 567 {ICAL_METHOD_ADD,ICAL_VEVENT_COMPONENT,ICAL_ATTACH_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 568 {ICAL_METHOD_ADD,ICAL_VEVENT_COMPONENT,ICAL_ATTENDEE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 569 {ICAL_METHOD_ADD,ICAL_VEVENT_COMPONENT,ICAL_CATEGORIES_PROPERTY,ICAL_RESTRICTION_ZEROPLUS ,0}, 570 {ICAL_METHOD_ADD,ICAL_VEVENT_COMPONENT,ICAL_CLASS_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 571 {ICAL_METHOD_ADD,ICAL_VEVENT_COMPONENT,ICAL_COMMENT_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 572 {ICAL_METHOD_ADD,ICAL_VEVENT_COMPONENT,ICAL_CONTACT_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 573 {ICAL_METHOD_ADD,ICAL_VEVENT_COMPONENT,ICAL_CREATED_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 574 {ICAL_METHOD_ADD,ICAL_VEVENT_COMPONENT,ICAL_DESCRIPTION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 575 {ICAL_METHOD_ADD,ICAL_VEVENT_COMPONENT,ICAL_DTEND_PROPERTY,ICAL_RESTRICTION_ONEEXCLUSIVE,icalrestriction_no_duration}, 576 {ICAL_METHOD_ADD,ICAL_VEVENT_COMPONENT,ICAL_DURATION_PROPERTY,ICAL_RESTRICTION_ONEEXCLUSIVE,icalrestriction_no_dtend}, 577 {ICAL_METHOD_ADD,ICAL_VEVENT_COMPONENT,ICAL_EXDATE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 578 {ICAL_METHOD_ADD,ICAL_VEVENT_COMPONENT,ICAL_EXRULE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 579 {ICAL_METHOD_ADD,ICAL_VEVENT_COMPONENT,ICAL_GEO_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 580 {ICAL_METHOD_ADD,ICAL_VEVENT_COMPONENT,ICAL_LASTMODIFIED_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 581 {ICAL_METHOD_ADD,ICAL_VEVENT_COMPONENT,ICAL_LOCATION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 582 {ICAL_METHOD_ADD,ICAL_VEVENT_COMPONENT,ICAL_PRIORITY_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 583 {ICAL_METHOD_ADD,ICAL_VEVENT_COMPONENT,ICAL_RDATE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 584 {ICAL_METHOD_ADD,ICAL_VEVENT_COMPONENT,ICAL_RELATEDTO_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 585 {ICAL_METHOD_ADD,ICAL_VEVENT_COMPONENT,ICAL_RESOURCES_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 586 {ICAL_METHOD_ADD,ICAL_VEVENT_COMPONENT,ICAL_RRULE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 587 {ICAL_METHOD_ADD,ICAL_VEVENT_COMPONENT,ICAL_STATUS_PROPERTY,ICAL_RESTRICTION_ZEROORONE,icalrestriction_may_be_tent_conf}, 588 {ICAL_METHOD_ADD,ICAL_VEVENT_COMPONENT,ICAL_TRANSP_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 589 {ICAL_METHOD_ADD,ICAL_VEVENT_COMPONENT,ICAL_URL_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 590 {ICAL_METHOD_ADD,ICAL_VEVENT_COMPONENT,ICAL_X_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 591 {ICAL_METHOD_ADD,ICAL_VEVENT_COMPONENT,ICAL_RECURRENCEID_PROPERTY,ICAL_RESTRICTION_ZERO,icalrestriction_must_be_recurring}, 592 {ICAL_METHOD_ADD,ICAL_VEVENT_COMPONENT,ICAL_REQUESTSTATUS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 593 {ICAL_METHOD_ADD,ICAL_VEVENT_COMPONENT,ICAL_RELCALID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 594 {ICAL_METHOD_CANCEL,ICAL_VEVENT_COMPONENT,ICAL_ATTENDEE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 595 {ICAL_METHOD_CANCEL,ICAL_VEVENT_COMPONENT,ICAL_DTSTAMP_PROPERTY,ICAL_RESTRICTION_ONE,0}, 596 {ICAL_METHOD_CANCEL,ICAL_VEVENT_COMPONENT,ICAL_ORGANIZER_PROPERTY,ICAL_RESTRICTION_ONE,0}, 597 {ICAL_METHOD_CANCEL,ICAL_VEVENT_COMPONENT,ICAL_SEQUENCE_PROPERTY,ICAL_RESTRICTION_ONE,0}, 598 {ICAL_METHOD_CANCEL,ICAL_VEVENT_COMPONENT,ICAL_UID_PROPERTY,ICAL_RESTRICTION_ONE,0}, 599 {ICAL_METHOD_CANCEL,ICAL_VEVENT_COMPONENT,ICAL_COMMENT_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 600 {ICAL_METHOD_CANCEL,ICAL_VEVENT_COMPONENT,ICAL_ATTACH_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 601 {ICAL_METHOD_CANCEL,ICAL_VEVENT_COMPONENT,ICAL_CATEGORIES_PROPERTY,ICAL_RESTRICTION_ZEROPLUS ,0}, 602 {ICAL_METHOD_CANCEL,ICAL_VEVENT_COMPONENT,ICAL_CLASS_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 603 {ICAL_METHOD_CANCEL,ICAL_VEVENT_COMPONENT,ICAL_CONTACT_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 604 {ICAL_METHOD_CANCEL,ICAL_VEVENT_COMPONENT,ICAL_CREATED_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 605 {ICAL_METHOD_CANCEL,ICAL_VEVENT_COMPONENT,ICAL_DESCRIPTION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 606 {ICAL_METHOD_CANCEL,ICAL_VEVENT_COMPONENT,ICAL_DTEND_PROPERTY,ICAL_RESTRICTION_ONEEXCLUSIVE ,icalrestriction_no_duration}, 607 {ICAL_METHOD_CANCEL,ICAL_VEVENT_COMPONENT,ICAL_DTSTART_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 608 {ICAL_METHOD_CANCEL,ICAL_VEVENT_COMPONENT,ICAL_DURATION_PROPERTY,ICAL_RESTRICTION_ONEEXCLUSIVE,icalrestriction_no_dtend}, 609 {ICAL_METHOD_CANCEL,ICAL_VEVENT_COMPONENT,ICAL_EXDATE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 610 {ICAL_METHOD_CANCEL,ICAL_VEVENT_COMPONENT,ICAL_EXRULE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 611 {ICAL_METHOD_CANCEL,ICAL_VEVENT_COMPONENT,ICAL_GEO_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 612 {ICAL_METHOD_CANCEL,ICAL_VEVENT_COMPONENT,ICAL_LASTMODIFIED_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 613 {ICAL_METHOD_CANCEL,ICAL_VEVENT_COMPONENT,ICAL_LOCATION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 614 {ICAL_METHOD_CANCEL,ICAL_VEVENT_COMPONENT,ICAL_PRIORITY_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 615 {ICAL_METHOD_CANCEL,ICAL_VEVENT_COMPONENT,ICAL_RDATE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 616 {ICAL_METHOD_CANCEL,ICAL_VEVENT_COMPONENT,ICAL_RECURRENCEID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,icalrestriction_must_be_recurring}, 617 {ICAL_METHOD_CANCEL,ICAL_VEVENT_COMPONENT,ICAL_RELATEDTO_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 618 {ICAL_METHOD_CANCEL,ICAL_VEVENT_COMPONENT,ICAL_RESOURCES_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 619 {ICAL_METHOD_CANCEL,ICAL_VEVENT_COMPONENT,ICAL_RRULE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 620 {ICAL_METHOD_CANCEL,ICAL_VEVENT_COMPONENT,ICAL_STATUS_PROPERTY,ICAL_RESTRICTION_ZEROORONE,icalrestriction_must_be_canceled_no_attendee}, 621 {ICAL_METHOD_CANCEL,ICAL_VEVENT_COMPONENT,ICAL_SUMMARY_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 622 {ICAL_METHOD_CANCEL,ICAL_VEVENT_COMPONENT,ICAL_TRANSP_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 623 {ICAL_METHOD_CANCEL,ICAL_VEVENT_COMPONENT,ICAL_URL_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 624 {ICAL_METHOD_CANCEL,ICAL_VEVENT_COMPONENT,ICAL_X_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 625 {ICAL_METHOD_CANCEL,ICAL_VEVENT_COMPONENT,ICAL_REQUESTSTATUS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 626 {ICAL_METHOD_CANCEL,ICAL_VEVENT_COMPONENT,ICAL_RELCALID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 627 {ICAL_METHOD_REFRESH,ICAL_VEVENT_COMPONENT,ICAL_ATTENDEE_PROPERTY,ICAL_RESTRICTION_ONE,0}, 628 {ICAL_METHOD_REFRESH,ICAL_VEVENT_COMPONENT,ICAL_DTSTAMP_PROPERTY,ICAL_RESTRICTION_ONE,0}, 629 {ICAL_METHOD_REFRESH,ICAL_VEVENT_COMPONENT,ICAL_ORGANIZER_PROPERTY,ICAL_RESTRICTION_ONE,0}, 630 {ICAL_METHOD_REFRESH,ICAL_VEVENT_COMPONENT,ICAL_UID_PROPERTY,ICAL_RESTRICTION_ONE,0}, 631 {ICAL_METHOD_REFRESH,ICAL_VEVENT_COMPONENT,ICAL_COMMENT_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 632 {ICAL_METHOD_REFRESH,ICAL_VEVENT_COMPONENT,ICAL_RECURRENCEID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,icalrestriction_must_be_recurring}, 633 {ICAL_METHOD_REFRESH,ICAL_VEVENT_COMPONENT,ICAL_X_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 634 {ICAL_METHOD_REFRESH,ICAL_VEVENT_COMPONENT,ICAL_ATTACH_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 635 {ICAL_METHOD_REFRESH,ICAL_VEVENT_COMPONENT,ICAL_CATEGORIES_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 636 {ICAL_METHOD_REFRESH,ICAL_VEVENT_COMPONENT,ICAL_CLASS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 637 {ICAL_METHOD_REFRESH,ICAL_VEVENT_COMPONENT,ICAL_CONTACT_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 638 {ICAL_METHOD_REFRESH,ICAL_VEVENT_COMPONENT,ICAL_CREATED_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 639 {ICAL_METHOD_REFRESH,ICAL_VEVENT_COMPONENT,ICAL_DESCRIPTION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 640 {ICAL_METHOD_REFRESH,ICAL_VEVENT_COMPONENT,ICAL_DTEND_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 641 {ICAL_METHOD_REFRESH,ICAL_VEVENT_COMPONENT,ICAL_DTSTART_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 642 {ICAL_METHOD_REFRESH,ICAL_VEVENT_COMPONENT,ICAL_DURATION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 643 {ICAL_METHOD_REFRESH,ICAL_VEVENT_COMPONENT,ICAL_EXDATE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 644 {ICAL_METHOD_REFRESH,ICAL_VEVENT_COMPONENT,ICAL_EXRULE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 645 {ICAL_METHOD_REFRESH,ICAL_VEVENT_COMPONENT,ICAL_GEO_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 646 {ICAL_METHOD_REFRESH,ICAL_VEVENT_COMPONENT,ICAL_LASTMODIFIED_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 647 {ICAL_METHOD_REFRESH,ICAL_VEVENT_COMPONENT,ICAL_LOCATION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 648 {ICAL_METHOD_REFRESH,ICAL_VEVENT_COMPONENT,ICAL_PRIORITY_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 649 {ICAL_METHOD_REFRESH,ICAL_VEVENT_COMPONENT,ICAL_RDATE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 650 {ICAL_METHOD_REFRESH,ICAL_VEVENT_COMPONENT,ICAL_RELATEDTO_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 651 {ICAL_METHOD_REFRESH,ICAL_VEVENT_COMPONENT,ICAL_REQUESTSTATUS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 652 {ICAL_METHOD_REFRESH,ICAL_VEVENT_COMPONENT,ICAL_RESOURCES_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 653 {ICAL_METHOD_REFRESH,ICAL_VEVENT_COMPONENT,ICAL_RRULE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 654 {ICAL_METHOD_REFRESH,ICAL_VEVENT_COMPONENT,ICAL_SEQUENCE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 655 {ICAL_METHOD_REFRESH,ICAL_VEVENT_COMPONENT,ICAL_STATUS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 656 {ICAL_METHOD_REFRESH,ICAL_VEVENT_COMPONENT,ICAL_SUMMARY_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 657 {ICAL_METHOD_REFRESH,ICAL_VEVENT_COMPONENT,ICAL_TRANSP_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 658 {ICAL_METHOD_REFRESH,ICAL_VEVENT_COMPONENT,ICAL_URL_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 659 {ICAL_METHOD_REFRESH,ICAL_VEVENT_COMPONENT,ICAL_RELCALID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 660 {ICAL_METHOD_COUNTER,ICAL_VEVENT_COMPONENT,ICAL_DTSTAMP_PROPERTY,ICAL_RESTRICTION_ONE,0}, 661 {ICAL_METHOD_COUNTER,ICAL_VEVENT_COMPONENT,ICAL_DTSTART_PROPERTY,ICAL_RESTRICTION_ONE,0}, 662 {ICAL_METHOD_COUNTER,ICAL_VEVENT_COMPONENT,ICAL_ORGANIZER_PROPERTY,ICAL_RESTRICTION_ONE,0}, 663 {ICAL_METHOD_COUNTER,ICAL_VEVENT_COMPONENT,ICAL_SEQUENCE_PROPERTY,ICAL_RESTRICTION_ONE,0}, 664 {ICAL_METHOD_COUNTER,ICAL_VEVENT_COMPONENT,ICAL_SUMMARY_PROPERTY,ICAL_RESTRICTION_ONE,0}, 665 {ICAL_METHOD_COUNTER,ICAL_VEVENT_COMPONENT,ICAL_UID_PROPERTY,ICAL_RESTRICTION_ONE,0}, 666 {ICAL_METHOD_COUNTER,ICAL_VEVENT_COMPONENT,ICAL_ATTACH_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 667 {ICAL_METHOD_COUNTER,ICAL_VEVENT_COMPONENT,ICAL_ATTENDEE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 668 {ICAL_METHOD_COUNTER,ICAL_VEVENT_COMPONENT,ICAL_CATEGORIES_PROPERTY,ICAL_RESTRICTION_ZEROPLUS ,0}, 669 {ICAL_METHOD_COUNTER,ICAL_VEVENT_COMPONENT,ICAL_CLASS_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 670 {ICAL_METHOD_COUNTER,ICAL_VEVENT_COMPONENT,ICAL_COMMENT_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 671 {ICAL_METHOD_COUNTER,ICAL_VEVENT_COMPONENT,ICAL_CONTACT_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 672 {ICAL_METHOD_COUNTER,ICAL_VEVENT_COMPONENT,ICAL_CREATED_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 673 {ICAL_METHOD_COUNTER,ICAL_VEVENT_COMPONENT,ICAL_DESCRIPTION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 674 {ICAL_METHOD_COUNTER,ICAL_VEVENT_COMPONENT,ICAL_DTEND_PROPERTY,ICAL_RESTRICTION_ONEEXCLUSIVE,icalrestriction_no_duration}, 675 {ICAL_METHOD_COUNTER,ICAL_VEVENT_COMPONENT,ICAL_DURATION_PROPERTY,ICAL_RESTRICTION_ONEEXCLUSIVE,icalrestriction_no_dtend}, 676 {ICAL_METHOD_COUNTER,ICAL_VEVENT_COMPONENT,ICAL_EXDATE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 677 {ICAL_METHOD_COUNTER,ICAL_VEVENT_COMPONENT,ICAL_EXRULE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 678 {ICAL_METHOD_COUNTER,ICAL_VEVENT_COMPONENT,ICAL_GEO_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 679 {ICAL_METHOD_COUNTER,ICAL_VEVENT_COMPONENT,ICAL_LASTMODIFIED_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 680 {ICAL_METHOD_COUNTER,ICAL_VEVENT_COMPONENT,ICAL_LOCATION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 681 {ICAL_METHOD_COUNTER,ICAL_VEVENT_COMPONENT,ICAL_PRIORITY_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 682 {ICAL_METHOD_COUNTER,ICAL_VEVENT_COMPONENT,ICAL_RDATE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 683 {ICAL_METHOD_COUNTER,ICAL_VEVENT_COMPONENT,ICAL_RECURRENCEID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,icalrestriction_must_be_recurring}, 684 {ICAL_METHOD_COUNTER,ICAL_VEVENT_COMPONENT,ICAL_RELATEDTO_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 685 {ICAL_METHOD_COUNTER,ICAL_VEVENT_COMPONENT,ICAL_REQUESTSTATUS_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 686 {ICAL_METHOD_COUNTER,ICAL_VEVENT_COMPONENT,ICAL_RESOURCES_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 687 {ICAL_METHOD_COUNTER,ICAL_VEVENT_COMPONENT,ICAL_RRULE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 688 {ICAL_METHOD_COUNTER,ICAL_VEVENT_COMPONENT,ICAL_STATUS_PROPERTY,ICAL_RESTRICTION_ZEROORONE,icalrestriction_may_be_tent_conf_cancel}, 689 {ICAL_METHOD_COUNTER,ICAL_VEVENT_COMPONENT,ICAL_TRANSP_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 690 {ICAL_METHOD_COUNTER,ICAL_VEVENT_COMPONENT,ICAL_URL_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 691 {ICAL_METHOD_COUNTER,ICAL_VEVENT_COMPONENT,ICAL_X_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 692 {ICAL_METHOD_COUNTER,ICAL_VEVENT_COMPONENT,ICAL_RELCALID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 693 {ICAL_METHOD_DECLINECOUNTER,ICAL_VEVENT_COMPONENT,ICAL_DTSTAMP_PROPERTY,ICAL_RESTRICTION_ONE,0}, 694 {ICAL_METHOD_DECLINECOUNTER,ICAL_VEVENT_COMPONENT,ICAL_ORGANIZER_PROPERTY,ICAL_RESTRICTION_ONE,0}, 695 {ICAL_METHOD_DECLINECOUNTER,ICAL_VEVENT_COMPONENT,ICAL_UID_PROPERTY,ICAL_RESTRICTION_ONE,0}, 696 {ICAL_METHOD_DECLINECOUNTER,ICAL_VEVENT_COMPONENT,ICAL_COMMENT_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 697 {ICAL_METHOD_DECLINECOUNTER,ICAL_VEVENT_COMPONENT,ICAL_RECURRENCEID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,icalrestriction_must_be_recurring}, 698 {ICAL_METHOD_DECLINECOUNTER,ICAL_VEVENT_COMPONENT,ICAL_REQUESTSTATUS_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 699 {ICAL_METHOD_DECLINECOUNTER,ICAL_VEVENT_COMPONENT,ICAL_SEQUENCE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 700 {ICAL_METHOD_DECLINECOUNTER,ICAL_VEVENT_COMPONENT,ICAL_X_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 701 {ICAL_METHOD_DECLINECOUNTER,ICAL_VEVENT_COMPONENT,ICAL_ATTACH_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 702 {ICAL_METHOD_DECLINECOUNTER,ICAL_VEVENT_COMPONENT,ICAL_ATTENDEE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 703 {ICAL_METHOD_DECLINECOUNTER,ICAL_VEVENT_COMPONENT,ICAL_CATEGORIES_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 704 {ICAL_METHOD_DECLINECOUNTER,ICAL_VEVENT_COMPONENT,ICAL_CLASS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 705 {ICAL_METHOD_DECLINECOUNTER,ICAL_VEVENT_COMPONENT,ICAL_CONTACT_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 706 {ICAL_METHOD_DECLINECOUNTER,ICAL_VEVENT_COMPONENT,ICAL_CREATED_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 707 {ICAL_METHOD_DECLINECOUNTER,ICAL_VEVENT_COMPONENT,ICAL_DESCRIPTION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 708 {ICAL_METHOD_DECLINECOUNTER,ICAL_VEVENT_COMPONENT,ICAL_DTEND_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 709 {ICAL_METHOD_DECLINECOUNTER,ICAL_VEVENT_COMPONENT,ICAL_DTSTART_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 710 {ICAL_METHOD_DECLINECOUNTER,ICAL_VEVENT_COMPONENT,ICAL_DURATION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 711 {ICAL_METHOD_DECLINECOUNTER,ICAL_VEVENT_COMPONENT,ICAL_EXDATE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 712 {ICAL_METHOD_DECLINECOUNTER,ICAL_VEVENT_COMPONENT,ICAL_EXRULE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 713 {ICAL_METHOD_DECLINECOUNTER,ICAL_VEVENT_COMPONENT,ICAL_GEO_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 714 {ICAL_METHOD_DECLINECOUNTER,ICAL_VEVENT_COMPONENT,ICAL_LASTMODIFIED_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 715 {ICAL_METHOD_DECLINECOUNTER,ICAL_VEVENT_COMPONENT,ICAL_LOCATION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 716 {ICAL_METHOD_DECLINECOUNTER,ICAL_VEVENT_COMPONENT,ICAL_PRIORITY_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 717 {ICAL_METHOD_DECLINECOUNTER,ICAL_VEVENT_COMPONENT,ICAL_RDATE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 718 {ICAL_METHOD_DECLINECOUNTER,ICAL_VEVENT_COMPONENT,ICAL_RELATEDTO_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 719 {ICAL_METHOD_DECLINECOUNTER,ICAL_VEVENT_COMPONENT,ICAL_RESOURCES_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 720 {ICAL_METHOD_DECLINECOUNTER,ICAL_VEVENT_COMPONENT,ICAL_RRULE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 721 {ICAL_METHOD_DECLINECOUNTER,ICAL_VEVENT_COMPONENT,ICAL_STATUS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 722 {ICAL_METHOD_DECLINECOUNTER,ICAL_VEVENT_COMPONENT,ICAL_SUMMARY_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 723 {ICAL_METHOD_DECLINECOUNTER,ICAL_VEVENT_COMPONENT,ICAL_TRANSP_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 724 {ICAL_METHOD_DECLINECOUNTER,ICAL_VEVENT_COMPONENT,ICAL_URL_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 725 {ICAL_METHOD_DECLINECOUNTER,ICAL_VEVENT_COMPONENT,ICAL_RELCALID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 726 {ICAL_METHOD_PUBLISH,ICAL_VFREEBUSY_COMPONENT,ICAL_DTSTAMP_PROPERTY,ICAL_RESTRICTION_ONE,0}, 727 {ICAL_METHOD_PUBLISH,ICAL_VFREEBUSY_COMPONENT,ICAL_DTSTART_PROPERTY,ICAL_RESTRICTION_ONE,0}, 728 {ICAL_METHOD_PUBLISH,ICAL_VFREEBUSY_COMPONENT,ICAL_DTEND_PROPERTY,ICAL_RESTRICTION_ONE,0}, 729 {ICAL_METHOD_PUBLISH,ICAL_VFREEBUSY_COMPONENT,ICAL_FREEBUSY_PROPERTY,ICAL_RESTRICTION_ONEPLUS,0}, 730 {ICAL_METHOD_PUBLISH,ICAL_VFREEBUSY_COMPONENT,ICAL_ORGANIZER_PROPERTY,ICAL_RESTRICTION_ONE,0}, 731 {ICAL_METHOD_PUBLISH,ICAL_VFREEBUSY_COMPONENT,ICAL_COMMENT_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 732 {ICAL_METHOD_PUBLISH,ICAL_VFREEBUSY_COMPONENT,ICAL_CONTACT_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 733 {ICAL_METHOD_PUBLISH,ICAL_VFREEBUSY_COMPONENT,ICAL_X_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 734 {ICAL_METHOD_PUBLISH,ICAL_VFREEBUSY_COMPONENT,ICAL_URL_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 735 {ICAL_METHOD_PUBLISH,ICAL_VFREEBUSY_COMPONENT,ICAL_ATTENDEE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 736 {ICAL_METHOD_PUBLISH,ICAL_VFREEBUSY_COMPONENT,ICAL_DURATION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 737 {ICAL_METHOD_PUBLISH,ICAL_VFREEBUSY_COMPONENT,ICAL_REQUESTSTATUS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 738 {ICAL_METHOD_PUBLISH,ICAL_VFREEBUSY_COMPONENT,ICAL_UID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 739 {ICAL_METHOD_REQUEST,ICAL_VFREEBUSY_COMPONENT,ICAL_ATTENDEE_PROPERTY,ICAL_RESTRICTION_ONEPLUS,0}, 740 {ICAL_METHOD_REQUEST,ICAL_VFREEBUSY_COMPONENT,ICAL_DTEND_PROPERTY,ICAL_RESTRICTION_ONE,0}, 741 {ICAL_METHOD_REQUEST,ICAL_VFREEBUSY_COMPONENT,ICAL_DTSTAMP_PROPERTY,ICAL_RESTRICTION_ONE,0}, 742 {ICAL_METHOD_REQUEST,ICAL_VFREEBUSY_COMPONENT,ICAL_DTSTART_PROPERTY,ICAL_RESTRICTION_ONE,0}, 743 {ICAL_METHOD_REQUEST,ICAL_VFREEBUSY_COMPONENT,ICAL_ORGANIZER_PROPERTY,ICAL_RESTRICTION_ONE,0}, 744 {ICAL_METHOD_REQUEST,ICAL_VFREEBUSY_COMPONENT,ICAL_UID_PROPERTY,ICAL_RESTRICTION_ONE,0}, 745 {ICAL_METHOD_REQUEST,ICAL_VFREEBUSY_COMPONENT,ICAL_COMMENT_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 746 {ICAL_METHOD_REQUEST,ICAL_VFREEBUSY_COMPONENT,ICAL_CONTACT_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 747 {ICAL_METHOD_REQUEST,ICAL_VFREEBUSY_COMPONENT,ICAL_X_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 748 {ICAL_METHOD_REQUEST,ICAL_VFREEBUSY_COMPONENT,ICAL_FREEBUSY_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 749 {ICAL_METHOD_REQUEST,ICAL_VFREEBUSY_COMPONENT,ICAL_DURATION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 750 {ICAL_METHOD_REQUEST,ICAL_VFREEBUSY_COMPONENT,ICAL_REQUESTSTATUS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 751 {ICAL_METHOD_REQUEST,ICAL_VFREEBUSY_COMPONENT,ICAL_URL_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 752 {ICAL_METHOD_REPLY,ICAL_VFREEBUSY_COMPONENT,ICAL_ATTENDEE_PROPERTY,ICAL_RESTRICTION_ONE,0}, 753 {ICAL_METHOD_REPLY,ICAL_VFREEBUSY_COMPONENT,ICAL_DTSTAMP_PROPERTY,ICAL_RESTRICTION_ONE,0}, 754 {ICAL_METHOD_REPLY,ICAL_VFREEBUSY_COMPONENT,ICAL_DTEND_PROPERTY,ICAL_RESTRICTION_ONE,0}, 755 {ICAL_METHOD_REPLY,ICAL_VFREEBUSY_COMPONENT,ICAL_DTSTART_PROPERTY,ICAL_RESTRICTION_ONE,0}, 756 {ICAL_METHOD_REPLY,ICAL_VFREEBUSY_COMPONENT,ICAL_FREEBUSY_PROPERTY,ICAL_RESTRICTION_ONEPLUS,0}, 757 {ICAL_METHOD_REPLY,ICAL_VFREEBUSY_COMPONENT,ICAL_ORGANIZER_PROPERTY,ICAL_RESTRICTION_ONE,0}, 758 {ICAL_METHOD_REPLY,ICAL_VFREEBUSY_COMPONENT,ICAL_UID_PROPERTY,ICAL_RESTRICTION_ONE,0}, 759 {ICAL_METHOD_REPLY,ICAL_VFREEBUSY_COMPONENT,ICAL_COMMENT_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 760 {ICAL_METHOD_REPLY,ICAL_VFREEBUSY_COMPONENT,ICAL_CONTACT_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 761 {ICAL_METHOD_REPLY,ICAL_VFREEBUSY_COMPONENT,ICAL_REQUESTSTATUS_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 762 {ICAL_METHOD_REPLY,ICAL_VFREEBUSY_COMPONENT,ICAL_URL_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 763 {ICAL_METHOD_REPLY,ICAL_VFREEBUSY_COMPONENT,ICAL_X_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 764 {ICAL_METHOD_REPLY,ICAL_VFREEBUSY_COMPONENT,ICAL_DURATION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 765 {ICAL_METHOD_REPLY,ICAL_VFREEBUSY_COMPONENT,ICAL_SEQUENCE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 766 {ICAL_METHOD_PUBLISH,ICAL_VTODO_COMPONENT,ICAL_DTSTAMP_PROPERTY,ICAL_RESTRICTION_ONE,0}, 767 {ICAL_METHOD_PUBLISH,ICAL_VTODO_COMPONENT,ICAL_DTSTART_PROPERTY,ICAL_RESTRICTION_ONE,0}, 768 {ICAL_METHOD_PUBLISH,ICAL_VTODO_COMPONENT,ICAL_ORGANIZER_PROPERTY,ICAL_RESTRICTION_ONE,0}, 769 {ICAL_METHOD_PUBLISH,ICAL_VTODO_COMPONENT,ICAL_PRIORITY_PROPERTY,ICAL_RESTRICTION_ONE,0}, 770 {ICAL_METHOD_PUBLISH,ICAL_VTODO_COMPONENT,ICAL_SEQUENCE_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 771 {ICAL_METHOD_PUBLISH,ICAL_VTODO_COMPONENT,ICAL_SUMMARY_PROPERTY,ICAL_RESTRICTION_ONE,0}, 772 {ICAL_METHOD_PUBLISH,ICAL_VTODO_COMPONENT,ICAL_UID_PROPERTY,ICAL_RESTRICTION_ONE,0}, 773 {ICAL_METHOD_PUBLISH,ICAL_VTODO_COMPONENT,ICAL_ATTACH_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 774 {ICAL_METHOD_PUBLISH,ICAL_VTODO_COMPONENT,ICAL_CATEGORIES_PROPERTY,ICAL_RESTRICTION_ZEROPLUS ,0}, 775 {ICAL_METHOD_PUBLISH,ICAL_VTODO_COMPONENT,ICAL_CLASS_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 776 {ICAL_METHOD_PUBLISH,ICAL_VTODO_COMPONENT,ICAL_COMMENT_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 777 {ICAL_METHOD_PUBLISH,ICAL_VTODO_COMPONENT,ICAL_CONTACT_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 778 {ICAL_METHOD_PUBLISH,ICAL_VTODO_COMPONENT,ICAL_CREATED_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 779 {ICAL_METHOD_PUBLISH,ICAL_VTODO_COMPONENT,ICAL_DESCRIPTION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 780 {ICAL_METHOD_PUBLISH,ICAL_VTODO_COMPONENT,ICAL_DUE_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 781 {ICAL_METHOD_PUBLISH,ICAL_VTODO_COMPONENT,ICAL_DURATION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 782 {ICAL_METHOD_PUBLISH,ICAL_VTODO_COMPONENT,ICAL_EXDATE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 783 {ICAL_METHOD_PUBLISH,ICAL_VTODO_COMPONENT,ICAL_EXRULE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 784 {ICAL_METHOD_PUBLISH,ICAL_VTODO_COMPONENT,ICAL_GEO_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 785 {ICAL_METHOD_PUBLISH,ICAL_VTODO_COMPONENT,ICAL_LASTMODIFIED_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 786 {ICAL_METHOD_PUBLISH,ICAL_VTODO_COMPONENT,ICAL_LOCATION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 787 {ICAL_METHOD_PUBLISH,ICAL_VTODO_COMPONENT,ICAL_PERCENTCOMPLETE_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 788 {ICAL_METHOD_PUBLISH,ICAL_VTODO_COMPONENT,ICAL_RDATE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 789 {ICAL_METHOD_PUBLISH,ICAL_VTODO_COMPONENT,ICAL_RECURRENCEID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,icalrestriction_must_be_recurring}, 790 {ICAL_METHOD_PUBLISH,ICAL_VTODO_COMPONENT,ICAL_RELATEDTO_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 791 {ICAL_METHOD_PUBLISH,ICAL_VTODO_COMPONENT,ICAL_RESOURCES_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 792 {ICAL_METHOD_PUBLISH,ICAL_VTODO_COMPONENT,ICAL_RRULE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 793 {ICAL_METHOD_PUBLISH,ICAL_VTODO_COMPONENT,ICAL_STATUS_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 794 {ICAL_METHOD_PUBLISH,ICAL_VTODO_COMPONENT,ICAL_URL_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 795 {ICAL_METHOD_PUBLISH,ICAL_VTODO_COMPONENT,ICAL_X_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 796 {ICAL_METHOD_PUBLISH,ICAL_VTODO_COMPONENT,ICAL_ATTENDEE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 797 {ICAL_METHOD_PUBLISH,ICAL_VTODO_COMPONENT,ICAL_REQUESTSTATUS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 798 {ICAL_METHOD_PUBLISH,ICAL_VTODO_COMPONENT,ICAL_RELCALID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 799 {ICAL_METHOD_REQUEST,ICAL_VTODO_COMPONENT,ICAL_ATTENDEE_PROPERTY,ICAL_RESTRICTION_ONEPLUS,0}, 800 {ICAL_METHOD_REQUEST,ICAL_VTODO_COMPONENT,ICAL_DTSTAMP_PROPERTY,ICAL_RESTRICTION_ONE,0}, 801 {ICAL_METHOD_REQUEST,ICAL_VTODO_COMPONENT,ICAL_DTSTART_PROPERTY,ICAL_RESTRICTION_ONE,0}, 802 {ICAL_METHOD_REQUEST,ICAL_VTODO_COMPONENT,ICAL_ORGANIZER_PROPERTY,ICAL_RESTRICTION_ONE,0}, 803 {ICAL_METHOD_REQUEST,ICAL_VTODO_COMPONENT,ICAL_PRIORITY_PROPERTY,ICAL_RESTRICTION_ONE,0}, 804 {ICAL_METHOD_REQUEST,ICAL_VTODO_COMPONENT,ICAL_SEQUENCE_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 805 {ICAL_METHOD_REQUEST,ICAL_VTODO_COMPONENT,ICAL_SUMMARY_PROPERTY,ICAL_RESTRICTION_ONE,0}, 806 {ICAL_METHOD_REQUEST,ICAL_VTODO_COMPONENT,ICAL_UID_PROPERTY,ICAL_RESTRICTION_ONE,0}, 807 {ICAL_METHOD_REQUEST,ICAL_VTODO_COMPONENT,ICAL_ATTACH_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 808 {ICAL_METHOD_REQUEST,ICAL_VTODO_COMPONENT,ICAL_CATEGORIES_PROPERTY,ICAL_RESTRICTION_ZEROPLUS ,0}, 809 {ICAL_METHOD_REQUEST,ICAL_VTODO_COMPONENT,ICAL_CLASS_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 810 {ICAL_METHOD_REQUEST,ICAL_VTODO_COMPONENT,ICAL_COMMENT_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 811 {ICAL_METHOD_REQUEST,ICAL_VTODO_COMPONENT,ICAL_CONTACT_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 812 {ICAL_METHOD_REQUEST,ICAL_VTODO_COMPONENT,ICAL_CREATED_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 813 {ICAL_METHOD_REQUEST,ICAL_VTODO_COMPONENT,ICAL_DESCRIPTION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 814 {ICAL_METHOD_REQUEST,ICAL_VTODO_COMPONENT,ICAL_DUE_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 815 {ICAL_METHOD_REQUEST,ICAL_VTODO_COMPONENT,ICAL_DURATION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 816 {ICAL_METHOD_REQUEST,ICAL_VTODO_COMPONENT,ICAL_EXDATE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 817 {ICAL_METHOD_REQUEST,ICAL_VTODO_COMPONENT,ICAL_EXRULE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 818 {ICAL_METHOD_REQUEST,ICAL_VTODO_COMPONENT,ICAL_GEO_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 819 {ICAL_METHOD_REQUEST,ICAL_VTODO_COMPONENT,ICAL_LASTMODIFIED_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 820 {ICAL_METHOD_REQUEST,ICAL_VTODO_COMPONENT,ICAL_LOCATION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 821 {ICAL_METHOD_REQUEST,ICAL_VTODO_COMPONENT,ICAL_PERCENTCOMPLETE_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 822 {ICAL_METHOD_REQUEST,ICAL_VTODO_COMPONENT,ICAL_RDATE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 823 {ICAL_METHOD_REQUEST,ICAL_VTODO_COMPONENT,ICAL_RECURRENCEID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,icalrestriction_must_be_recurring}, 824 {ICAL_METHOD_REQUEST,ICAL_VTODO_COMPONENT,ICAL_RELATEDTO_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 825 {ICAL_METHOD_REQUEST,ICAL_VTODO_COMPONENT,ICAL_RESOURCES_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 826 {ICAL_METHOD_REQUEST,ICAL_VTODO_COMPONENT,ICAL_RRULE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 827 {ICAL_METHOD_REQUEST,ICAL_VTODO_COMPONENT,ICAL_STATUS_PROPERTY,ICAL_RESTRICTION_ZEROORONE,icalrestriction_may_be_comp_need_process}, 828 {ICAL_METHOD_REQUEST,ICAL_VTODO_COMPONENT,ICAL_URL_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 829 {ICAL_METHOD_REQUEST,ICAL_VTODO_COMPONENT,ICAL_X_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 830 {ICAL_METHOD_REQUEST,ICAL_VTODO_COMPONENT,ICAL_REQUESTSTATUS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 831 {ICAL_METHOD_REQUEST,ICAL_VTODO_COMPONENT,ICAL_RELCALID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 832 {ICAL_METHOD_REPLY,ICAL_VTODO_COMPONENT,ICAL_ATTENDEE_PROPERTY,ICAL_RESTRICTION_ONEPLUS,0}, 833 {ICAL_METHOD_REPLY,ICAL_VTODO_COMPONENT,ICAL_DTSTAMP_PROPERTY,ICAL_RESTRICTION_ONE,0}, 834 {ICAL_METHOD_REPLY,ICAL_VTODO_COMPONENT,ICAL_ORGANIZER_PROPERTY,ICAL_RESTRICTION_ONE,0}, 835 {ICAL_METHOD_REPLY,ICAL_VTODO_COMPONENT,ICAL_REQUESTSTATUS_PROPERTY,ICAL_RESTRICTION_ONEPLUS,0}, 836 {ICAL_METHOD_REPLY,ICAL_VTODO_COMPONENT,ICAL_UID_PROPERTY,ICAL_RESTRICTION_ONE,0}, 837 {ICAL_METHOD_REPLY,ICAL_VTODO_COMPONENT,ICAL_ATTACH_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 838 {ICAL_METHOD_REPLY,ICAL_VTODO_COMPONENT,ICAL_CATEGORIES_PROPERTY,ICAL_RESTRICTION_ZEROPLUS ,0}, 839 {ICAL_METHOD_REPLY,ICAL_VTODO_COMPONENT,ICAL_CLASS_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 840 {ICAL_METHOD_REPLY,ICAL_VTODO_COMPONENT,ICAL_COMMENT_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 841 {ICAL_METHOD_REPLY,ICAL_VTODO_COMPONENT,ICAL_CONTACT_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 842 {ICAL_METHOD_REPLY,ICAL_VTODO_COMPONENT,ICAL_CREATED_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 843 {ICAL_METHOD_REPLY,ICAL_VTODO_COMPONENT,ICAL_DESCRIPTION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 844 {ICAL_METHOD_REPLY,ICAL_VTODO_COMPONENT,ICAL_DTSTART_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 845 {ICAL_METHOD_REPLY,ICAL_VTODO_COMPONENT,ICAL_DUE_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 846 {ICAL_METHOD_REPLY,ICAL_VTODO_COMPONENT,ICAL_DURATION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 847 {ICAL_METHOD_REPLY,ICAL_VTODO_COMPONENT,ICAL_EXDATE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 848 {ICAL_METHOD_REPLY,ICAL_VTODO_COMPONENT,ICAL_EXRULE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 849 {ICAL_METHOD_REPLY,ICAL_VTODO_COMPONENT,ICAL_GEO_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 850 {ICAL_METHOD_REPLY,ICAL_VTODO_COMPONENT,ICAL_LASTMODIFIED_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 851 {ICAL_METHOD_REPLY,ICAL_VTODO_COMPONENT,ICAL_LOCATION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 852 {ICAL_METHOD_REPLY,ICAL_VTODO_COMPONENT,ICAL_PERCENTCOMPLETE_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 853 {ICAL_METHOD_REPLY,ICAL_VTODO_COMPONENT,ICAL_PRIORITY_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 854 {ICAL_METHOD_REPLY,ICAL_VTODO_COMPONENT,ICAL_RDATE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 855 {ICAL_METHOD_REPLY,ICAL_VTODO_COMPONENT,ICAL_RELATEDTO_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 856 {ICAL_METHOD_REPLY,ICAL_VTODO_COMPONENT,ICAL_RESOURCES_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 857 {ICAL_METHOD_REPLY,ICAL_VTODO_COMPONENT,ICAL_RRULE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 858 {ICAL_METHOD_REPLY,ICAL_VTODO_COMPONENT,ICAL_RECURRENCEID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,icalrestriction_must_be_recurring}, 859 {ICAL_METHOD_REPLY,ICAL_VTODO_COMPONENT,ICAL_SEQUENCE_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 860 {ICAL_METHOD_REPLY,ICAL_VTODO_COMPONENT,ICAL_STATUS_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 861 {ICAL_METHOD_REPLY,ICAL_VTODO_COMPONENT,ICAL_SUMMARY_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 862 {ICAL_METHOD_REPLY,ICAL_VTODO_COMPONENT,ICAL_URL_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 863 {ICAL_METHOD_REPLY,ICAL_VTODO_COMPONENT,ICAL_X_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 864 {ICAL_METHOD_REPLY,ICAL_VTODO_COMPONENT,ICAL_RELCALID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 865 {ICAL_METHOD_ADD,ICAL_VTODO_COMPONENT,ICAL_DTSTAMP_PROPERTY,ICAL_RESTRICTION_ONE,0}, 866 {ICAL_METHOD_ADD,ICAL_VTODO_COMPONENT,ICAL_ORGANIZER_PROPERTY,ICAL_RESTRICTION_ONE,0}, 867 {ICAL_METHOD_ADD,ICAL_VTODO_COMPONENT,ICAL_PRIORITY_PROPERTY,ICAL_RESTRICTION_ONE,0}, 868 {ICAL_METHOD_ADD,ICAL_VTODO_COMPONENT,ICAL_SEQUENCE_PROPERTY,ICAL_RESTRICTION_ONE,0}, 869 {ICAL_METHOD_ADD,ICAL_VTODO_COMPONENT,ICAL_SUMMARY_PROPERTY,ICAL_RESTRICTION_ONE,0}, 870 {ICAL_METHOD_ADD,ICAL_VTODO_COMPONENT,ICAL_UID_PROPERTY,ICAL_RESTRICTION_ONE,0}, 871 {ICAL_METHOD_ADD,ICAL_VTODO_COMPONENT,ICAL_ATTACH_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 872 {ICAL_METHOD_ADD,ICAL_VTODO_COMPONENT,ICAL_ATTENDEE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 873 {ICAL_METHOD_ADD,ICAL_VTODO_COMPONENT,ICAL_CATEGORIES_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 874 {ICAL_METHOD_ADD,ICAL_VTODO_COMPONENT,ICAL_CLASS_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 875 {ICAL_METHOD_ADD,ICAL_VTODO_COMPONENT,ICAL_COMMENT_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 876 {ICAL_METHOD_ADD,ICAL_VTODO_COMPONENT,ICAL_CONTACT_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 877 {ICAL_METHOD_ADD,ICAL_VTODO_COMPONENT,ICAL_CREATED_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 878 {ICAL_METHOD_ADD,ICAL_VTODO_COMPONENT,ICAL_DESCRIPTION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 879 {ICAL_METHOD_ADD,ICAL_VTODO_COMPONENT,ICAL_DTSTART_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 880 {ICAL_METHOD_ADD,ICAL_VTODO_COMPONENT,ICAL_DUE_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 881 {ICAL_METHOD_ADD,ICAL_VTODO_COMPONENT,ICAL_DURATION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 882 {ICAL_METHOD_ADD,ICAL_VTODO_COMPONENT,ICAL_EXDATE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 883 {ICAL_METHOD_ADD,ICAL_VTODO_COMPONENT,ICAL_EXRULE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 884 {ICAL_METHOD_ADD,ICAL_VTODO_COMPONENT,ICAL_GEO_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 885 {ICAL_METHOD_ADD,ICAL_VTODO_COMPONENT,ICAL_LASTMODIFIED_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 886 {ICAL_METHOD_ADD,ICAL_VTODO_COMPONENT,ICAL_LOCATION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 887 {ICAL_METHOD_ADD,ICAL_VTODO_COMPONENT,ICAL_PERCENTCOMPLETE_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 888 {ICAL_METHOD_ADD,ICAL_VTODO_COMPONENT,ICAL_RDATE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 889 {ICAL_METHOD_ADD,ICAL_VTODO_COMPONENT,ICAL_RELATEDTO_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 890 {ICAL_METHOD_ADD,ICAL_VTODO_COMPONENT,ICAL_RESOURCES_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 891 {ICAL_METHOD_ADD,ICAL_VTODO_COMPONENT,ICAL_RRULE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 892 {ICAL_METHOD_ADD,ICAL_VTODO_COMPONENT,ICAL_STATUS_PROPERTY,ICAL_RESTRICTION_ZEROORONE,icalrestriction_may_be_comp_need_process}, 893 {ICAL_METHOD_ADD,ICAL_VTODO_COMPONENT,ICAL_URL_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 894 {ICAL_METHOD_ADD,ICAL_VTODO_COMPONENT,ICAL_X_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 895 {ICAL_METHOD_ADD,ICAL_VTODO_COMPONENT,ICAL_RECURRENCEID_PROPERTY,ICAL_RESTRICTION_ZERO,icalrestriction_must_be_recurring}, 896 {ICAL_METHOD_ADD,ICAL_VTODO_COMPONENT,ICAL_REQUESTSTATUS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 897 {ICAL_METHOD_ADD,ICAL_VTODO_COMPONENT,ICAL_RELCALID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 898 {ICAL_METHOD_CANCEL,ICAL_VTODO_COMPONENT,ICAL_ATTENDEE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 899 {ICAL_METHOD_CANCEL,ICAL_VTODO_COMPONENT,ICAL_UID_PROPERTY,ICAL_RESTRICTION_ONE,0}, 900 {ICAL_METHOD_CANCEL,ICAL_VTODO_COMPONENT,ICAL_DTSTAMP_PROPERTY,ICAL_RESTRICTION_ONE,0}, 901 {ICAL_METHOD_CANCEL,ICAL_VTODO_COMPONENT,ICAL_ORGANIZER_PROPERTY,ICAL_RESTRICTION_ONE,0}, 902 {ICAL_METHOD_CANCEL,ICAL_VTODO_COMPONENT,ICAL_SEQUENCE_PROPERTY,ICAL_RESTRICTION_ONE,0}, 903 {ICAL_METHOD_CANCEL,ICAL_VTODO_COMPONENT,ICAL_ATTACH_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 904 {ICAL_METHOD_CANCEL,ICAL_VTODO_COMPONENT,ICAL_CATEGORIES_PROPERTY,ICAL_RESTRICTION_ZEROPLUS ,0}, 905 {ICAL_METHOD_CANCEL,ICAL_VTODO_COMPONENT,ICAL_CLASS_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 906 {ICAL_METHOD_CANCEL,ICAL_VTODO_COMPONENT,ICAL_COMMENT_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 907 {ICAL_METHOD_CANCEL,ICAL_VTODO_COMPONENT,ICAL_CONTACT_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 908 {ICAL_METHOD_CANCEL,ICAL_VTODO_COMPONENT,ICAL_CREATED_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 909 {ICAL_METHOD_CANCEL,ICAL_VTODO_COMPONENT,ICAL_DESCRIPTION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 910 {ICAL_METHOD_CANCEL,ICAL_VTODO_COMPONENT,ICAL_DTSTART_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 911 {ICAL_METHOD_CANCEL,ICAL_VTODO_COMPONENT,ICAL_DUE_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 912 {ICAL_METHOD_CANCEL,ICAL_VTODO_COMPONENT,ICAL_DURATION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 913 {ICAL_METHOD_CANCEL,ICAL_VTODO_COMPONENT,ICAL_EXDATE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 914 {ICAL_METHOD_CANCEL,ICAL_VTODO_COMPONENT,ICAL_EXRULE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 915 {ICAL_METHOD_CANCEL,ICAL_VTODO_COMPONENT,ICAL_GEO_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 916 {ICAL_METHOD_CANCEL,ICAL_VTODO_COMPONENT,ICAL_LASTMODIFIED_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 917 {ICAL_METHOD_CANCEL,ICAL_VTODO_COMPONENT,ICAL_LOCATION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 918 {ICAL_METHOD_CANCEL,ICAL_VTODO_COMPONENT,ICAL_PERCENTCOMPLETE_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 919 {ICAL_METHOD_CANCEL,ICAL_VTODO_COMPONENT,ICAL_RDATE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 920 {ICAL_METHOD_CANCEL,ICAL_VTODO_COMPONENT,ICAL_RECURRENCEID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,icalrestriction_must_be_recurring}, 921 {ICAL_METHOD_CANCEL,ICAL_VTODO_COMPONENT,ICAL_RELATEDTO_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 922 {ICAL_METHOD_CANCEL,ICAL_VTODO_COMPONENT,ICAL_RESOURCES_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 923 {ICAL_METHOD_CANCEL,ICAL_VTODO_COMPONENT,ICAL_RRULE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 924 {ICAL_METHOD_CANCEL,ICAL_VTODO_COMPONENT,ICAL_PRIORITY_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 925 {ICAL_METHOD_CANCEL,ICAL_VTODO_COMPONENT,ICAL_STATUS_PROPERTY,ICAL_RESTRICTION_ZEROORONE,icalrestriction_must_be_canceled_no_attendee}, 926 {ICAL_METHOD_CANCEL,ICAL_VTODO_COMPONENT,ICAL_URL_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 927 {ICAL_METHOD_CANCEL,ICAL_VTODO_COMPONENT,ICAL_X_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 928 {ICAL_METHOD_CANCEL,ICAL_VTODO_COMPONENT,ICAL_REQUESTSTATUS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 929 {ICAL_METHOD_CANCEL,ICAL_VTODO_COMPONENT,ICAL_RELCALID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 930 {ICAL_METHOD_REFRESH,ICAL_VTODO_COMPONENT,ICAL_ATTENDEE_PROPERTY,ICAL_RESTRICTION_ONE,0}, 931 {ICAL_METHOD_REFRESH,ICAL_VTODO_COMPONENT,ICAL_DTSTAMP_PROPERTY,ICAL_RESTRICTION_ONE,0}, 932 {ICAL_METHOD_REFRESH,ICAL_VTODO_COMPONENT,ICAL_UID_PROPERTY,ICAL_RESTRICTION_ONE,0}, 933 {ICAL_METHOD_REFRESH,ICAL_VTODO_COMPONENT,ICAL_RECURRENCEID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,icalrestriction_must_be_recurring}, 934 {ICAL_METHOD_REFRESH,ICAL_VTODO_COMPONENT,ICAL_X_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 935 {ICAL_METHOD_REFRESH,ICAL_VTODO_COMPONENT,ICAL_ATTACH_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 936 {ICAL_METHOD_REFRESH,ICAL_VTODO_COMPONENT,ICAL_CATEGORIES_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 937 {ICAL_METHOD_REFRESH,ICAL_VTODO_COMPONENT,ICAL_CLASS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 938 {ICAL_METHOD_REFRESH,ICAL_VTODO_COMPONENT,ICAL_COMMENT_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 939 {ICAL_METHOD_REFRESH,ICAL_VTODO_COMPONENT,ICAL_CONTACT_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 940 {ICAL_METHOD_REFRESH,ICAL_VTODO_COMPONENT,ICAL_CREATED_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 941 {ICAL_METHOD_REFRESH,ICAL_VTODO_COMPONENT,ICAL_DESCRIPTION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 942 {ICAL_METHOD_REFRESH,ICAL_VTODO_COMPONENT,ICAL_DTSTART_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 943 {ICAL_METHOD_REFRESH,ICAL_VTODO_COMPONENT,ICAL_DUE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 944 {ICAL_METHOD_REFRESH,ICAL_VTODO_COMPONENT,ICAL_DURATION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 945 {ICAL_METHOD_REFRESH,ICAL_VTODO_COMPONENT,ICAL_EXDATE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 946 {ICAL_METHOD_REFRESH,ICAL_VTODO_COMPONENT,ICAL_EXRULE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 947 {ICAL_METHOD_REFRESH,ICAL_VTODO_COMPONENT,ICAL_GEO_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 948 {ICAL_METHOD_REFRESH,ICAL_VTODO_COMPONENT,ICAL_LASTMODIFIED_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 949 {ICAL_METHOD_REFRESH,ICAL_VTODO_COMPONENT,ICAL_LOCATION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 950 {ICAL_METHOD_REFRESH,ICAL_VTODO_COMPONENT,ICAL_ORGANIZER_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 951 {ICAL_METHOD_REFRESH,ICAL_VTODO_COMPONENT,ICAL_PERCENTCOMPLETE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 952 {ICAL_METHOD_REFRESH,ICAL_VTODO_COMPONENT,ICAL_PRIORITY_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 953 {ICAL_METHOD_REFRESH,ICAL_VTODO_COMPONENT,ICAL_RDATE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 954 {ICAL_METHOD_REFRESH,ICAL_VTODO_COMPONENT,ICAL_RELATEDTO_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 955 {ICAL_METHOD_REFRESH,ICAL_VTODO_COMPONENT,ICAL_REQUESTSTATUS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 956 {ICAL_METHOD_REFRESH,ICAL_VTODO_COMPONENT,ICAL_RESOURCES_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 957 {ICAL_METHOD_REFRESH,ICAL_VTODO_COMPONENT,ICAL_RRULE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 958 {ICAL_METHOD_REFRESH,ICAL_VTODO_COMPONENT,ICAL_SEQUENCE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 959 {ICAL_METHOD_REFRESH,ICAL_VTODO_COMPONENT,ICAL_STATUS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 960 {ICAL_METHOD_REFRESH,ICAL_VTODO_COMPONENT,ICAL_URL_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 961 {ICAL_METHOD_REFRESH,ICAL_VTODO_COMPONENT,ICAL_RELCALID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 962 {ICAL_METHOD_COUNTER,ICAL_VTODO_COMPONENT,ICAL_ATTENDEE_PROPERTY,ICAL_RESTRICTION_ONEPLUS,0}, 963 {ICAL_METHOD_COUNTER,ICAL_VTODO_COMPONENT,ICAL_DTSTAMP_PROPERTY,ICAL_RESTRICTION_ONE,0}, 964 {ICAL_METHOD_COUNTER,ICAL_VTODO_COMPONENT,ICAL_ORGANIZER_PROPERTY,ICAL_RESTRICTION_ONE,0}, 965 {ICAL_METHOD_COUNTER,ICAL_VTODO_COMPONENT,ICAL_PRIORITY_PROPERTY,ICAL_RESTRICTION_ONE,0}, 966 {ICAL_METHOD_COUNTER,ICAL_VTODO_COMPONENT,ICAL_SUMMARY_PROPERTY,ICAL_RESTRICTION_ONE,0}, 967 {ICAL_METHOD_COUNTER,ICAL_VTODO_COMPONENT,ICAL_UID_PROPERTY,ICAL_RESTRICTION_ONE,0}, 968 {ICAL_METHOD_COUNTER,ICAL_VTODO_COMPONENT,ICAL_ATTACH_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 969 {ICAL_METHOD_COUNTER,ICAL_VTODO_COMPONENT,ICAL_CATEGORIES_PROPERTY,ICAL_RESTRICTION_ZEROPLUS ,0}, 970 {ICAL_METHOD_COUNTER,ICAL_VTODO_COMPONENT,ICAL_CLASS_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 971 {ICAL_METHOD_COUNTER,ICAL_VTODO_COMPONENT,ICAL_COMMENT_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 972 {ICAL_METHOD_COUNTER,ICAL_VTODO_COMPONENT,ICAL_CONTACT_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 973 {ICAL_METHOD_COUNTER,ICAL_VTODO_COMPONENT,ICAL_CREATED_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 974 {ICAL_METHOD_COUNTER,ICAL_VTODO_COMPONENT,ICAL_DESCRIPTION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 975 {ICAL_METHOD_COUNTER,ICAL_VTODO_COMPONENT,ICAL_DTSTART_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 976 {ICAL_METHOD_COUNTER,ICAL_VTODO_COMPONENT,ICAL_DUE_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 977 {ICAL_METHOD_COUNTER,ICAL_VTODO_COMPONENT,ICAL_DURATION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 978 {ICAL_METHOD_COUNTER,ICAL_VTODO_COMPONENT,ICAL_EXDATE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 979 {ICAL_METHOD_COUNTER,ICAL_VTODO_COMPONENT,ICAL_EXRULE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 980 {ICAL_METHOD_COUNTER,ICAL_VTODO_COMPONENT,ICAL_GEO_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 981 {ICAL_METHOD_COUNTER,ICAL_VTODO_COMPONENT,ICAL_LASTMODIFIED_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 982 {ICAL_METHOD_COUNTER,ICAL_VTODO_COMPONENT,ICAL_LOCATION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 983 {ICAL_METHOD_COUNTER,ICAL_VTODO_COMPONENT,ICAL_PERCENTCOMPLETE_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 984 {ICAL_METHOD_COUNTER,ICAL_VTODO_COMPONENT,ICAL_RDATE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 985 {ICAL_METHOD_COUNTER,ICAL_VTODO_COMPONENT,ICAL_RECURRENCEID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,icalrestriction_must_be_recurring}, 986 {ICAL_METHOD_COUNTER,ICAL_VTODO_COMPONENT,ICAL_RELATEDTO_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 987 {ICAL_METHOD_COUNTER,ICAL_VTODO_COMPONENT,ICAL_REQUESTSTATUS_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 988 {ICAL_METHOD_COUNTER,ICAL_VTODO_COMPONENT,ICAL_RESOURCES_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 989 {ICAL_METHOD_COUNTER,ICAL_VTODO_COMPONENT,ICAL_RRULE_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 990 {ICAL_METHOD_COUNTER,ICAL_VTODO_COMPONENT,ICAL_SEQUENCE_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 991 {ICAL_METHOD_COUNTER,ICAL_VTODO_COMPONENT,ICAL_STATUS_PROPERTY,ICAL_RESTRICTION_ZEROORONE,icalrestriction_may_be_comp_need_process}, 992 {ICAL_METHOD_COUNTER,ICAL_VTODO_COMPONENT,ICAL_URL_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 993 {ICAL_METHOD_COUNTER,ICAL_VTODO_COMPONENT,ICAL_X_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 994 {ICAL_METHOD_COUNTER,ICAL_VTODO_COMPONENT,ICAL_RELCALID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 995 {ICAL_METHOD_DECLINECOUNTER,ICAL_VTODO_COMPONENT,ICAL_ATTENDEE_PROPERTY,ICAL_RESTRICTION_ONEPLUS,0}, 996 {ICAL_METHOD_DECLINECOUNTER,ICAL_VTODO_COMPONENT,ICAL_DTSTAMP_PROPERTY,ICAL_RESTRICTION_ONE,0}, 997 {ICAL_METHOD_DECLINECOUNTER,ICAL_VTODO_COMPONENT,ICAL_ORGANIZER_PROPERTY,ICAL_RESTRICTION_ONE,0}, 998 {ICAL_METHOD_DECLINECOUNTER,ICAL_VTODO_COMPONENT,ICAL_SEQUENCE_PROPERTY,ICAL_RESTRICTION_ONE,0}, 999 {ICAL_METHOD_DECLINECOUNTER,ICAL_VTODO_COMPONENT,ICAL_UID_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1000 {ICAL_METHOD_DECLINECOUNTER,ICAL_VTODO_COMPONENT,ICAL_ATTACH_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1001 {ICAL_METHOD_DECLINECOUNTER,ICAL_VTODO_COMPONENT,ICAL_CATEGORIES_PROPERTY,ICAL_RESTRICTION_ZEROPLUS ,0}, 1002 {ICAL_METHOD_DECLINECOUNTER,ICAL_VTODO_COMPONENT,ICAL_CLASS_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1003 {ICAL_METHOD_DECLINECOUNTER,ICAL_VTODO_COMPONENT,ICAL_COMMENT_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1004 {ICAL_METHOD_DECLINECOUNTER,ICAL_VTODO_COMPONENT,ICAL_CONTACT_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1005 {ICAL_METHOD_DECLINECOUNTER,ICAL_VTODO_COMPONENT,ICAL_CREATED_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1006 {ICAL_METHOD_DECLINECOUNTER,ICAL_VTODO_COMPONENT,ICAL_DESCRIPTION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1007 {ICAL_METHOD_DECLINECOUNTER,ICAL_VTODO_COMPONENT,ICAL_DTSTART_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1008 {ICAL_METHOD_DECLINECOUNTER,ICAL_VTODO_COMPONENT,ICAL_DUE_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1009 {ICAL_METHOD_DECLINECOUNTER,ICAL_VTODO_COMPONENT,ICAL_DURATION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1010 {ICAL_METHOD_DECLINECOUNTER,ICAL_VTODO_COMPONENT,ICAL_EXDATE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1011 {ICAL_METHOD_DECLINECOUNTER,ICAL_VTODO_COMPONENT,ICAL_EXRULE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1012 {ICAL_METHOD_DECLINECOUNTER,ICAL_VTODO_COMPONENT,ICAL_GEO_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1013 {ICAL_METHOD_DECLINECOUNTER,ICAL_VTODO_COMPONENT,ICAL_LASTMODIFIED_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1014 {ICAL_METHOD_DECLINECOUNTER,ICAL_VTODO_COMPONENT,ICAL_LOCATION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1015 {ICAL_METHOD_DECLINECOUNTER,ICAL_VTODO_COMPONENT,ICAL_PERCENTCOMPLETE_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1016 {ICAL_METHOD_DECLINECOUNTER,ICAL_VTODO_COMPONENT,ICAL_PRIORITY_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1017 {ICAL_METHOD_DECLINECOUNTER,ICAL_VTODO_COMPONENT,ICAL_RDATE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1018 {ICAL_METHOD_DECLINECOUNTER,ICAL_VTODO_COMPONENT,ICAL_RECURRENCEID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,icalrestriction_must_be_recurring}, 1019 {ICAL_METHOD_DECLINECOUNTER,ICAL_VTODO_COMPONENT,ICAL_RELATEDTO_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1020 {ICAL_METHOD_DECLINECOUNTER,ICAL_VTODO_COMPONENT,ICAL_REQUESTSTATUS_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1021 {ICAL_METHOD_DECLINECOUNTER,ICAL_VTODO_COMPONENT,ICAL_RESOURCES_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1022 {ICAL_METHOD_DECLINECOUNTER,ICAL_VTODO_COMPONENT,ICAL_RRULE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1023 {ICAL_METHOD_DECLINECOUNTER,ICAL_VTODO_COMPONENT,ICAL_STATUS_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1024 {ICAL_METHOD_DECLINECOUNTER,ICAL_VTODO_COMPONENT,ICAL_URL_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1025 {ICAL_METHOD_DECLINECOUNTER,ICAL_VTODO_COMPONENT,ICAL_X_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1026 {ICAL_METHOD_DECLINECOUNTER,ICAL_VTODO_COMPONENT,ICAL_RELCALID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1027 {ICAL_METHOD_PUBLISH,ICAL_VJOURNAL_COMPONENT,ICAL_DESCRIPTION_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1028 {ICAL_METHOD_PUBLISH,ICAL_VJOURNAL_COMPONENT,ICAL_DTSTAMP_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1029 {ICAL_METHOD_PUBLISH,ICAL_VJOURNAL_COMPONENT,ICAL_DTSTART_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1030 {ICAL_METHOD_PUBLISH,ICAL_VJOURNAL_COMPONENT,ICAL_ORGANIZER_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1031 {ICAL_METHOD_PUBLISH,ICAL_VJOURNAL_COMPONENT,ICAL_UID_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1032 {ICAL_METHOD_PUBLISH,ICAL_VJOURNAL_COMPONENT,ICAL_ATTACH_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1033 {ICAL_METHOD_PUBLISH,ICAL_VJOURNAL_COMPONENT,ICAL_CATEGORIES_PROPERTY,ICAL_RESTRICTION_ZEROPLUS ,0}, 1034 {ICAL_METHOD_PUBLISH,ICAL_VJOURNAL_COMPONENT,ICAL_CLASS_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1035 {ICAL_METHOD_PUBLISH,ICAL_VJOURNAL_COMPONENT,ICAL_COMMENT_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1036 {ICAL_METHOD_PUBLISH,ICAL_VJOURNAL_COMPONENT,ICAL_CONTACT_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1037 {ICAL_METHOD_PUBLISH,ICAL_VJOURNAL_COMPONENT,ICAL_CREATED_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1038 {ICAL_METHOD_PUBLISH,ICAL_VJOURNAL_COMPONENT,ICAL_EXDATE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1039 {ICAL_METHOD_PUBLISH,ICAL_VJOURNAL_COMPONENT,ICAL_EXRULE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1040 {ICAL_METHOD_PUBLISH,ICAL_VJOURNAL_COMPONENT,ICAL_LASTMODIFIED_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1041 {ICAL_METHOD_PUBLISH,ICAL_VJOURNAL_COMPONENT,ICAL_RDATE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1042 {ICAL_METHOD_PUBLISH,ICAL_VJOURNAL_COMPONENT,ICAL_RECURRENCEID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,icalrestriction_must_be_recurring}, 1043 {ICAL_METHOD_PUBLISH,ICAL_VJOURNAL_COMPONENT,ICAL_RELATEDTO_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1044 {ICAL_METHOD_PUBLISH,ICAL_VJOURNAL_COMPONENT,ICAL_RRULE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1045 {ICAL_METHOD_PUBLISH,ICAL_VJOURNAL_COMPONENT,ICAL_SEQUENCE_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1046 {ICAL_METHOD_PUBLISH,ICAL_VJOURNAL_COMPONENT,ICAL_STATUS_PROPERTY,ICAL_RESTRICTION_ZEROORONE,icalrestriction_may_be_draft_final_canceled}, 1047 {ICAL_METHOD_PUBLISH,ICAL_VJOURNAL_COMPONENT,ICAL_SUMMARY_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1048 {ICAL_METHOD_PUBLISH,ICAL_VJOURNAL_COMPONENT,ICAL_URL_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1049 {ICAL_METHOD_PUBLISH,ICAL_VJOURNAL_COMPONENT,ICAL_X_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1050 {ICAL_METHOD_PUBLISH,ICAL_VJOURNAL_COMPONENT,ICAL_ATTENDEE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1051 {ICAL_METHOD_ADD,ICAL_VJOURNAL_COMPONENT,ICAL_DESCRIPTION_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1052 {ICAL_METHOD_ADD,ICAL_VJOURNAL_COMPONENT,ICAL_DTSTAMP_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1053 {ICAL_METHOD_ADD,ICAL_VJOURNAL_COMPONENT,ICAL_DTSTART_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1054 {ICAL_METHOD_ADD,ICAL_VJOURNAL_COMPONENT,ICAL_ORGANIZER_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1055 {ICAL_METHOD_ADD,ICAL_VJOURNAL_COMPONENT,ICAL_SEQUENCE_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1056 {ICAL_METHOD_ADD,ICAL_VJOURNAL_COMPONENT,ICAL_UID_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1057 {ICAL_METHOD_ADD,ICAL_VJOURNAL_COMPONENT,ICAL_ATTACH_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1058 {ICAL_METHOD_ADD,ICAL_VJOURNAL_COMPONENT,ICAL_CATEGORIES_PROPERTY,ICAL_RESTRICTION_ZEROPLUS ,0}, 1059 {ICAL_METHOD_ADD,ICAL_VJOURNAL_COMPONENT,ICAL_CLASS_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1060 {ICAL_METHOD_ADD,ICAL_VJOURNAL_COMPONENT,ICAL_COMMENT_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1061 {ICAL_METHOD_ADD,ICAL_VJOURNAL_COMPONENT,ICAL_CONTACT_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1062 {ICAL_METHOD_ADD,ICAL_VJOURNAL_COMPONENT,ICAL_CREATED_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1063 {ICAL_METHOD_ADD,ICAL_VJOURNAL_COMPONENT,ICAL_EXDATE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1064 {ICAL_METHOD_ADD,ICAL_VJOURNAL_COMPONENT,ICAL_EXRULE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1065 {ICAL_METHOD_ADD,ICAL_VJOURNAL_COMPONENT,ICAL_LASTMODIFIED_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1066 {ICAL_METHOD_ADD,ICAL_VJOURNAL_COMPONENT,ICAL_RDATE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1067 {ICAL_METHOD_ADD,ICAL_VJOURNAL_COMPONENT,ICAL_RELATEDTO_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1068 {ICAL_METHOD_ADD,ICAL_VJOURNAL_COMPONENT,ICAL_RRULE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1069 {ICAL_METHOD_ADD,ICAL_VJOURNAL_COMPONENT,ICAL_STATUS_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1070 {ICAL_METHOD_ADD,ICAL_VJOURNAL_COMPONENT,ICAL_SUMMARY_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1071 {ICAL_METHOD_ADD,ICAL_VJOURNAL_COMPONENT,ICAL_URL_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1072 {ICAL_METHOD_ADD,ICAL_VJOURNAL_COMPONENT,ICAL_X_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1073 {ICAL_METHOD_ADD,ICAL_VJOURNAL_COMPONENT,ICAL_ATTENDEE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1074 {ICAL_METHOD_ADD,ICAL_VJOURNAL_COMPONENT,ICAL_RECURRENCEID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1075 {ICAL_METHOD_CANCEL,ICAL_VJOURNAL_COMPONENT,ICAL_DTSTAMP_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1076 {ICAL_METHOD_CANCEL,ICAL_VJOURNAL_COMPONENT,ICAL_ORGANIZER_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1077 {ICAL_METHOD_CANCEL,ICAL_VJOURNAL_COMPONENT,ICAL_SEQUENCE_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1078 {ICAL_METHOD_CANCEL,ICAL_VJOURNAL_COMPONENT,ICAL_UID_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1079 {ICAL_METHOD_CANCEL,ICAL_VJOURNAL_COMPONENT,ICAL_ATTACH_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1080 {ICAL_METHOD_CANCEL,ICAL_VJOURNAL_COMPONENT,ICAL_ATTENDEE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1081 {ICAL_METHOD_CANCEL,ICAL_VJOURNAL_COMPONENT,ICAL_CATEGORIES_PROPERTY,ICAL_RESTRICTION_ZEROPLUS ,0}, 1082 {ICAL_METHOD_CANCEL,ICAL_VJOURNAL_COMPONENT,ICAL_CLASS_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1083 {ICAL_METHOD_CANCEL,ICAL_VJOURNAL_COMPONENT,ICAL_COMMENT_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1084 {ICAL_METHOD_CANCEL,ICAL_VJOURNAL_COMPONENT,ICAL_CONTACT_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1085 {ICAL_METHOD_CANCEL,ICAL_VJOURNAL_COMPONENT,ICAL_CREATED_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1086 {ICAL_METHOD_CANCEL,ICAL_VJOURNAL_COMPONENT,ICAL_DESCRIPTION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1087 {ICAL_METHOD_CANCEL,ICAL_VJOURNAL_COMPONENT,ICAL_DTSTART_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1088 {ICAL_METHOD_CANCEL,ICAL_VJOURNAL_COMPONENT,ICAL_EXDATE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1089 {ICAL_METHOD_CANCEL,ICAL_VJOURNAL_COMPONENT,ICAL_EXRULE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1090 {ICAL_METHOD_CANCEL,ICAL_VJOURNAL_COMPONENT,ICAL_LASTMODIFIED_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1091 {ICAL_METHOD_CANCEL,ICAL_VJOURNAL_COMPONENT,ICAL_RDATE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1092 {ICAL_METHOD_CANCEL,ICAL_VJOURNAL_COMPONENT,ICAL_RECURRENCEID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,icalrestriction_must_be_recurring}, 1093 {ICAL_METHOD_CANCEL,ICAL_VJOURNAL_COMPONENT,ICAL_RELATEDTO_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1094 {ICAL_METHOD_CANCEL,ICAL_VJOURNAL_COMPONENT,ICAL_RRULE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1095 {ICAL_METHOD_CANCEL,ICAL_VJOURNAL_COMPONENT,ICAL_STATUS_PROPERTY,ICAL_RESTRICTION_ZEROORONE,icalrestriction_must_be_cancel_if_present}, 1096 {ICAL_METHOD_CANCEL,ICAL_VJOURNAL_COMPONENT,ICAL_SUMMARY_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1097 {ICAL_METHOD_CANCEL,ICAL_VJOURNAL_COMPONENT,ICAL_URL_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1098 {ICAL_METHOD_CANCEL,ICAL_VJOURNAL_COMPONENT,ICAL_X_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1099 {ICAL_METHOD_CANCEL,ICAL_VJOURNAL_COMPONENT,ICAL_REQUESTSTATUS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1100 {ICAL_METHOD_PUBLISH,ICAL_VAGENDA_COMPONENT,ICAL_CALMASTER_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1101 {ICAL_METHOD_PUBLISH,ICAL_VAGENDA_COMPONENT,ICAL_OWNER_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1102 {ICAL_METHOD_PUBLISH,ICAL_VAGENDA_COMPONENT,ICAL_RELCALID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1103 {ICAL_METHOD_PUBLISH,ICAL_VAGENDA_COMPONENT,ICAL_TZID_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1104 {ICAL_METHOD_REQUEST,ICAL_VAGENDA_COMPONENT,ICAL_CALMASTER_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1105 {ICAL_METHOD_REQUEST,ICAL_VAGENDA_COMPONENT,ICAL_OWNER_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1106 {ICAL_METHOD_REQUEST,ICAL_VAGENDA_COMPONENT,ICAL_RELCALID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1107 {ICAL_METHOD_REQUEST,ICAL_VAGENDA_COMPONENT,ICAL_TZID_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1108 {ICAL_METHOD_REPLY,ICAL_VAGENDA_COMPONENT,ICAL_CALMASTER_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1109 {ICAL_METHOD_REPLY,ICAL_VAGENDA_COMPONENT,ICAL_OWNER_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1110 {ICAL_METHOD_REPLY,ICAL_VAGENDA_COMPONENT,ICAL_RELCALID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1111 {ICAL_METHOD_REPLY,ICAL_VAGENDA_COMPONENT,ICAL_TZID_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1112 {ICAL_METHOD_ADD,ICAL_VAGENDA_COMPONENT,ICAL_CALMASTER_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1113 {ICAL_METHOD_ADD,ICAL_VAGENDA_COMPONENT,ICAL_OWNER_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1114 {ICAL_METHOD_ADD,ICAL_VAGENDA_COMPONENT,ICAL_RELCALID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1115 {ICAL_METHOD_ADD,ICAL_VAGENDA_COMPONENT,ICAL_TZID_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1116 {ICAL_METHOD_CANCEL,ICAL_VAGENDA_COMPONENT,ICAL_CALMASTER_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1117 {ICAL_METHOD_CANCEL,ICAL_VAGENDA_COMPONENT,ICAL_OWNER_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1118 {ICAL_METHOD_CANCEL,ICAL_VAGENDA_COMPONENT,ICAL_RELCALID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1119 {ICAL_METHOD_CANCEL,ICAL_VAGENDA_COMPONENT,ICAL_TZID_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1120 {ICAL_METHOD_REFRESH,ICAL_VAGENDA_COMPONENT,ICAL_CALMASTER_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1121 {ICAL_METHOD_REFRESH,ICAL_VAGENDA_COMPONENT,ICAL_OWNER_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1122 {ICAL_METHOD_REFRESH,ICAL_VAGENDA_COMPONENT,ICAL_RELCALID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1123 {ICAL_METHOD_REFRESH,ICAL_VAGENDA_COMPONENT,ICAL_TZID_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1124 {ICAL_METHOD_COUNTER,ICAL_VAGENDA_COMPONENT,ICAL_CALMASTER_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1125 {ICAL_METHOD_COUNTER,ICAL_VAGENDA_COMPONENT,ICAL_OWNER_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1126 {ICAL_METHOD_COUNTER,ICAL_VAGENDA_COMPONENT,ICAL_RELCALID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1127 {ICAL_METHOD_COUNTER,ICAL_VAGENDA_COMPONENT,ICAL_TZID_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1128 {ICAL_METHOD_DECLINECOUNTER,ICAL_VAGENDA_COMPONENT,ICAL_CALMASTER_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1129 {ICAL_METHOD_DECLINECOUNTER,ICAL_VAGENDA_COMPONENT,ICAL_OWNER_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1130 {ICAL_METHOD_DECLINECOUNTER,ICAL_VAGENDA_COMPONENT,ICAL_RELCALID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1131 {ICAL_METHOD_DECLINECOUNTER,ICAL_VAGENDA_COMPONENT,ICAL_TZID_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1132 {ICAL_METHOD_NONE,ICAL_VAGENDA_COMPONENT,ICAL_ALLOWCONFLICT_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1133 {ICAL_METHOD_NONE,ICAL_VAGENDA_COMPONENT,ICAL_CALMASTER_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1134 {ICAL_METHOD_NONE,ICAL_VAGENDA_COMPONENT,ICAL_OWNER_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1135 {ICAL_METHOD_NONE,ICAL_VAGENDA_COMPONENT,ICAL_RELCALID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1136 {ICAL_METHOD_NONE,ICAL_VAGENDA_COMPONENT,ICAL_TZID_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1137 {ICAL_METHOD_NONE,ICAL_VAGENDA_COMPONENT,ICAL_DEFAULTCHARSET_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1138 {ICAL_METHOD_NONE,ICAL_VAGENDA_COMPONENT,ICAL_DEFAULTLOCALE_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1139 {ICAL_METHOD_NONE,ICAL_VAGENDA_COMPONENT,ICAL_DEFAULTTZID_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1140 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_ACTION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1141 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_ATTACH_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1142 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_ATTENDEE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1143 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_RELCALID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1144 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_CALSCALE_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1145 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_CATEGORIES_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1146 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_CLASS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1147 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_COMMENT_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1148 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_COMPLETED_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1149 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_CONTACT_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1150 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_CREATED_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1151 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_DESCRIPTION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1152 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_DTEND_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1153 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_DTSTAMP_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1154 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_DTSTART_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1155 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_DUE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1156 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_DURATION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1157 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_EXDATE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1158 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_EXRULE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1159 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_FREEBUSY_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1160 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_GEO_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1161 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_LASTMODIFIED_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1162 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_LOCATION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1163 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_METHOD_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1164 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_ORGANIZER_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1165 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_PERCENTCOMPLETE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1166 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_PRIORITY_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1167 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_PRODID_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1168 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_RDATE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1169 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_RECURRENCEID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1170 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_RELATEDTO_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1171 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_REPEAT_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1172 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_REQUESTSTATUS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1173 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_RESOURCES_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1174 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_RRULE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1175 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_SEQUENCE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1176 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_STATUS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1177 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_SUMMARY_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1178 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_TRANSP_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1179 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_TRIGGER_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1180 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_TZID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1181 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_TZNAME_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1182 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_TZOFFSETFROM_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1183 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_TZOFFSETTO_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1184 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_TZURL_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1185 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_UID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1186 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_URL_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1187 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_VERSION_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1188 {ICAL_METHOD_NONE,ICAL_VCALENDAR_COMPONENT,ICAL_X_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1189 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_ACTION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1190 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_ATTACH_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1191 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_ATTENDEE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1192 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_CALSCALE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1193 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_CATEGORIES_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1194 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_CLASS_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1195 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_COMMENT_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1196 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_COMPLETED_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1197 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_CONTACT_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1198 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_CREATED_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1199 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_DESCRIPTION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1200 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_DTEND_PROPERTY,ICAL_RESTRICTION_ONEEXCLUSIVE,icalrestriction_no_duration}, 1201 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_DTSTAMP_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1202 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_DTSTART_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1203 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_DUE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1204 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_DURATION_PROPERTY,ICAL_RESTRICTION_ONEEXCLUSIVE,icalrestriction_no_dtend}, 1205 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_EXDATE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1206 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_EXRULE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1207 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_FREEBUSY_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1208 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_GEO_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1209 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_LASTMODIFIED_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1210 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_LOCATION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1211 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_METHOD_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1212 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_ORGANIZER_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1213 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_PERCENTCOMPLETE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1214 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_PRIORITY_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1215 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_PRODID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1216 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_RDATE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1217 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_RECURRENCEID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,icalrestriction_must_be_recurring}, 1218 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_RELATEDTO_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1219 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_REPEAT_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1220 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_REQUESTSTATUS_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1221 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_RESOURCES_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1222 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_RRULE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1223 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_SEQUENCE_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1224 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_STATUS_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1225 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_SUMMARY_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1226 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_TRANSP_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1227 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_TRIGGER_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1228 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_TZID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1229 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_TZNAME_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1230 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_TZOFFSETFROM_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1231 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_TZOFFSETTO_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1232 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_TZURL_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1233 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_UID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1234 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_URL_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1235 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_VERSION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1236 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_X_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1237 {ICAL_METHOD_NONE,ICAL_VEVENT_COMPONENT,ICAL_RELCALID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1238 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_ACTION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1239 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_ATTACH_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1240 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_ATTENDEE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1241 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_CALSCALE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1242 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_CATEGORIES_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1243 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_CLASS_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1244 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_COMMENT_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1245 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_COMPLETED_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1246 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_CONTACT_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1247 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_CREATED_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1248 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_DESCRIPTION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1249 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_DTEND_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1250 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_DTSTAMP_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1251 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_DTSTART_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1252 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_DUE_PROPERTY,ICAL_RESTRICTION_ONEEXCLUSIVE,0}, 1253 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_DURATION_PROPERTY,ICAL_RESTRICTION_ONEEXCLUSIVE,0}, 1254 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_EXDATE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1255 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_EXRULE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1256 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_FREEBUSY_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1257 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_GEO_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1258 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_LASTMODIFIED_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1259 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_LOCATION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1260 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_METHOD_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1261 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_ORGANIZER_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1262 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_PERCENTCOMPLETE_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1263 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_PRIORITY_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1264 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_PRODID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1265 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_RDATE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1266 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_RECURRENCEID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,icalrestriction_must_be_recurring}, 1267 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_RELATEDTO_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1268 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_REPEAT_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1269 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_REQUESTSTATUS_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1270 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_RESOURCES_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1271 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_RRULE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1272 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_SEQUENCE_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1273 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_STATUS_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1274 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_SUMMARY_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1275 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_TRANSP_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1276 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_TRIGGER_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1277 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_TZID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1278 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_TZNAME_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1279 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_TZOFFSETFROM_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1280 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_TZOFFSETTO_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1281 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_TZURL_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1282 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_UID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1283 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_URL_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1284 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_VERSION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1285 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_X_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1286 {ICAL_METHOD_NONE,ICAL_VTODO_COMPONENT,ICAL_RELCALID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1287 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_ACTION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1288 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_ATTACH_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1289 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_ATTENDEE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1290 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_CALSCALE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1291 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_CATEGORIES_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1292 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_CLASS_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1293 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_COMMENT_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1294 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_COMPLETED_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1295 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_CONTACT_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1296 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_CREATED_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1297 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_DESCRIPTION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1298 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_DTEND_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1299 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_DTSTAMP_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1300 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_DTSTART_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1301 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_DUE_PROPERTY,ICAL_RESTRICTION_ONEEXCLUSIVE,0}, 1302 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_DURATION_PROPERTY,ICAL_RESTRICTION_ONEEXCLUSIVE,0}, 1303 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_EXDATE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1304 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_EXRULE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1305 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_FREEBUSY_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1306 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_GEO_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1307 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_LASTMODIFIED_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1308 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_LOCATION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1309 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_METHOD_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1310 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_ORGANIZER_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1311 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_PERCENTCOMPLETE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1312 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_PRIORITY_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1313 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_PRODID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1314 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_RDATE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1315 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_RECURRENCEID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,icalrestriction_must_be_recurring}, 1316 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_RELATEDTO_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1317 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_REPEAT_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1318 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_REQUESTSTATUS_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1319 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_RESOURCES_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1320 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_RRULE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1321 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_SEQUENCE_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1322 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_STATUS_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1323 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_SUMMARY_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1324 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_TRANSP_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1325 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_TRIGGER_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1326 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_TZID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1327 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_TZNAME_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1328 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_TZOFFSETFROM_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1329 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_TZOFFSETTO_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1330 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_TZURL_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1331 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_UID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1332 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_URL_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1333 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_VERSION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1334 {ICAL_METHOD_NONE,ICAL_VJOURNAL_COMPONENT,ICAL_X_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1335 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_ACTION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1336 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_ATTACH_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1337 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_ATTENDEE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1338 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_CALSCALE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1339 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_CATEGORIES_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1340 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_CLASS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1341 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_COMMENT_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1342 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_COMPLETED_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1343 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_CONTACT_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1344 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_CREATED_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1345 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_DESCRIPTION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1346 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_DTEND_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1347 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_DTSTAMP_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1348 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_DTSTART_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1349 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_DUE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1350 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_DURATION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1351 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_EXDATE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1352 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_EXRULE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1353 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_FREEBUSY_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1354 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_GEO_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1355 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_LASTMODIFIED_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1356 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_LOCATION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1357 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_METHOD_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1358 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_ORGANIZER_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1359 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_PERCENTCOMPLETE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1360 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_PRIORITY_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1361 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_PRODID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1362 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_RDATE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1363 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_RECURRENCEID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1364 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_RELATEDTO_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1365 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_REPEAT_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1366 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_REQUESTSTATUS_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1367 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_RESOURCES_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1368 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_RRULE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1369 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_SEQUENCE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1370 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_STATUS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1371 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_SUMMARY_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1372 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_TRANSP_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1373 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_TRIGGER_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1374 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_TZID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1375 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_TZNAME_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1376 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_TZOFFSETFROM_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1377 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_TZOFFSETTO_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1378 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_TZURL_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1379 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_UID_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1380 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_URL_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1381 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_VERSION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1382 {ICAL_METHOD_NONE,ICAL_VFREEBUSY_COMPONENT,ICAL_X_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1383 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_ACTION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1384 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_ATTACH_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1385 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_ATTENDEE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1386 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_CALSCALE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1387 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_CATEGORIES_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1388 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_CLASS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1389 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_COMMENT_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1390 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_COMPLETED_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1391 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_CONTACT_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1392 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_CREATED_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1393 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_DESCRIPTION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1394 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_DTEND_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1395 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_DTSTAMP_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1396 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_DTSTART_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1397 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_DUE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1398 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_DURATION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1399 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_EXDATE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1400 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_EXRULE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1401 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_FREEBUSY_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1402 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_GEO_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1403 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_LASTMODIFIED_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1404 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_LOCATION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1405 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_METHOD_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1406 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_ORGANIZER_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1407 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_PERCENTCOMPLETE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1408 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_PRIORITY_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1409 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_PRODID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1410 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_RDATE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1411 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_RECURRENCEID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1412 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_RELATEDTO_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1413 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_REPEAT_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1414 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_REQUESTSTATUS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1415 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_RESOURCES_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1416 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_RRULE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1417 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_SEQUENCE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1418 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_STATUS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1419 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_SUMMARY_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1420 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_TRANSP_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1421 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_TRIGGER_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1422 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_TZID_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1423 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_TZNAME_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1424 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_TZOFFSETFROM_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1425 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_TZOFFSETTO_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1426 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_TZURL_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1427 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_UID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1428 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_URL_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1429 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_VERSION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1430 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_X_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1431 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_ACTION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1432 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_ATTACH_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1433 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_ATTENDEE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1434 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_CALSCALE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1435 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_CATEGORIES_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1436 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_CLASS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1437 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_COMMENT_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1438 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_COMPLETED_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1439 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_CONTACT_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1440 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_CREATED_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1441 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_DESCRIPTION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1442 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_DTEND_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1443 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_DTSTAMP_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1444 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_DTSTART_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1445 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_DUE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1446 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_DURATION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1447 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_EXDATE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1448 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_EXRULE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1449 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_FREEBUSY_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1450 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_GEO_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1451 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_LASTMODIFIED_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1452 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_LOCATION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1453 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_METHOD_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1454 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_ORGANIZER_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1455 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_PERCENTCOMPLETE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1456 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_PRIORITY_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1457 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_PRODID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1458 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_RDATE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1459 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_RECURRENCEID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1460 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_RELATEDTO_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1461 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_REPEAT_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1462 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_REQUESTSTATUS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1463 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_RESOURCES_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1464 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_RRULE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1465 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_SEQUENCE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1466 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_STATUS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1467 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_SUMMARY_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1468 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_TRANSP_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1469 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_TRIGGER_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1470 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_TZID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1471 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_TZNAME_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1472 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_TZOFFSETFROM_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1473 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_TZOFFSETTO_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1474 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_TZURL_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1475 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_UID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1476 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_URL_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1477 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_VERSION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1478 {ICAL_METHOD_NONE,ICAL_XSTANDARD_COMPONENT,ICAL_X_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1479 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_ACTION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1480 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_ATTACH_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1481 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_ATTENDEE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1482 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_CALSCALE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1483 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_CATEGORIES_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1484 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_CLASS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1485 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_COMMENT_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1486 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_COMPLETED_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1487 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_CONTACT_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1488 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_CREATED_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1489 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_DESCRIPTION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1490 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_DTEND_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1491 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_DTSTAMP_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1492 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_DTSTART_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1493 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_DUE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1494 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_DURATION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1495 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_EXDATE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1496 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_EXRULE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1497 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_FREEBUSY_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1498 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_GEO_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1499 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_LASTMODIFIED_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1500 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_LOCATION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1501 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_METHOD_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1502 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_ORGANIZER_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1503 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_PERCENTCOMPLETE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1504 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_PRIORITY_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1505 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_PRODID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1506 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_RDATE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1507 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_RECURRENCEID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1508 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_RELATEDTO_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1509 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_REPEAT_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1510 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_REQUESTSTATUS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1511 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_RESOURCES_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1512 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_RRULE_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1513 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_SEQUENCE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1514 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_STATUS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1515 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_SUMMARY_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1516 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_TRANSP_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1517 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_TRIGGER_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1518 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_TZID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1519 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_TZNAME_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1520 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_TZOFFSETFROM_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1521 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_TZOFFSETTO_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1522 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_TZURL_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1523 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_UID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1524 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_URL_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1525 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_VERSION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1526 {ICAL_METHOD_NONE,ICAL_XDAYLIGHT_COMPONENT,ICAL_X_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1527 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_ACTION_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1528 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_ATTACH_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1529 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_ATTENDEE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1530 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_CALSCALE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1531 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_CATEGORIES_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1532 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_CLASS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1533 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_COMMENT_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1534 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_COMPLETED_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1535 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_CONTACT_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1536 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_CREATED_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1537 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_DESCRIPTION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1538 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_DTEND_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1539 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_DTSTAMP_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1540 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_DTSTART_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1541 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_DUE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1542 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_DURATION_PROPERTY,ICAL_RESTRICTION_ONEMUTUAL,icalrestriction_must_have_repeat}, 1543 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_REPEAT_PROPERTY,ICAL_RESTRICTION_ONEMUTUAL,icalrestriction_must_have_duration}, 1544 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_EXDATE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1545 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_EXRULE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1546 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_FREEBUSY_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1547 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_GEO_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1548 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_LASTMODIFIED_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1549 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_LOCATION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1550 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_METHOD_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1551 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_ORGANIZER_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1552 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_PERCENTCOMPLETE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1553 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_PRIORITY_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1554 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_PRODID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1555 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_RDATE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1556 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_RECURRENCEID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1557 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_RELATEDTO_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1558 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_REQUESTSTATUS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1559 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_RESOURCES_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1560 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_RRULE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1561 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_SEQUENCE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1562 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_STATUS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1563 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_SUMMARY_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1564 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_TRANSP_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1565 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_TRIGGER_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1566 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_TZID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1567 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_TZNAME_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1568 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_TZOFFSETFROM_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1569 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_TZOFFSETTO_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1570 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_TZURL_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1571 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_UID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1572 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_URL_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1573 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_VERSION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1574 {ICAL_METHOD_NONE,ICAL_XAUDIOALARM_COMPONENT,ICAL_X_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1575 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_ACTION_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1576 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_ATTACH_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1577 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_ATTENDEE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1578 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_CALSCALE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1579 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_CATEGORIES_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1580 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_CLASS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1581 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_COMMENT_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1582 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_COMPLETED_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1583 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_CONTACT_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1584 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_CREATED_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1585 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_DESCRIPTION_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1586 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_DTEND_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1587 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_DTSTAMP_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1588 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_DTSTART_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1589 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_DUE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1590 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_DURATION_PROPERTY,ICAL_RESTRICTION_ONEMUTUAL,icalrestriction_must_have_repeat}, 1591 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_REPEAT_PROPERTY,ICAL_RESTRICTION_ONEMUTUAL,icalrestriction_must_have_duration}, 1592 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_EXDATE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1593 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_EXRULE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1594 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_FREEBUSY_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1595 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_GEO_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1596 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_LASTMODIFIED_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1597 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_LOCATION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1598 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_METHOD_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1599 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_ORGANIZER_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1600 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_PERCENTCOMPLETE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1601 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_PRIORITY_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1602 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_PRODID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1603 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_RDATE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1604 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_RECURRENCEID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1605 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_RELATEDTO_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1606 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_REQUESTSTATUS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1607 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_RESOURCES_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1608 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_RRULE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1609 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_SEQUENCE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1610 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_STATUS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1611 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_SUMMARY_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1612 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_TRANSP_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1613 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_TRIGGER_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1614 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_TZID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1615 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_TZNAME_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1616 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_TZOFFSETFROM_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1617 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_TZOFFSETTO_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1618 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_TZURL_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1619 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_UID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1620 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_URL_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1621 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_VERSION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1622 {ICAL_METHOD_NONE,ICAL_XDISPLAYALARM_COMPONENT,ICAL_X_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1623 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_ACTION_PROPERTY,ICAL_RESTRICTION_ONE,icalrestriction_must_be_email}, 1624 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_ATTACH_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1625 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_ATTENDEE_PROPERTY,ICAL_RESTRICTION_ONEPLUS,0}, 1626 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_CALSCALE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1627 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_CATEGORIES_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1628 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_CLASS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1629 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_COMMENT_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1630 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_COMPLETED_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1631 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_CONTACT_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1632 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_CREATED_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1633 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_DESCRIPTION_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1634 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_DTEND_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1635 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_DTSTAMP_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1636 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_DTSTART_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1637 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_DUE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1638 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_DURATION_PROPERTY,ICAL_RESTRICTION_ONEMUTUAL,icalrestriction_must_have_repeat}, 1639 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_REPEAT_PROPERTY,ICAL_RESTRICTION_ONEMUTUAL,icalrestriction_must_have_duration}, 1640 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_EXDATE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1641 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_EXRULE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1642 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_FREEBUSY_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1643 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_GEO_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1644 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_LASTMODIFIED_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1645 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_LOCATION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1646 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_METHOD_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1647 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_ORGANIZER_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1648 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_PERCENTCOMPLETE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1649 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_PRIORITY_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1650 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_PRODID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1651 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_RDATE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1652 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_RECURRENCEID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1653 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_RELATEDTO_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1654 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_REQUESTSTATUS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1655 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_RESOURCES_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1656 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_RRULE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1657 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_SEQUENCE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1658 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_STATUS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1659 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_SUMMARY_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1660 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_TRANSP_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1661 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_TRIGGER_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1662 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_TZID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1663 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_TZNAME_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1664 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_TZOFFSETFROM_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1665 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_TZOFFSETTO_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1666 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_TZURL_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1667 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_UID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1668 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_URL_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1669 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_VERSION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1670 {ICAL_METHOD_NONE,ICAL_XEMAILALARM_COMPONENT,ICAL_X_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1671 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_ACTION_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1672 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_ATTACH_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1673 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_ATTENDEE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1674 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_CALSCALE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1675 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_CATEGORIES_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1676 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_CLASS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1677 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_COMMENT_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1678 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_COMPLETED_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1679 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_CONTACT_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1680 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_CREATED_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1681 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_DESCRIPTION_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1682 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_DTEND_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1683 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_DTSTAMP_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1684 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_DTSTART_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1685 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_DUE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1686 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_DURATION_PROPERTY,ICAL_RESTRICTION_ONEMUTUAL,icalrestriction_must_have_repeat}, 1687 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_REPEAT_PROPERTY,ICAL_RESTRICTION_ONEMUTUAL,icalrestriction_must_have_duration}, 1688 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_EXDATE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1689 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_EXRULE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1690 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_FREEBUSY_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1691 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_GEO_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1692 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_LASTMODIFIED_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1693 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_LOCATION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1694 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_METHOD_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1695 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_ORGANIZER_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1696 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_PERCENTCOMPLETE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1697 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_PRIORITY_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1698 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_PRODID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1699 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_RDATE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1700 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_RECURRENCEID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1701 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_RELATEDTO_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1702 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_REQUESTSTATUS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1703 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_RESOURCES_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1704 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_RRULE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1705 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_SEQUENCE_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1706 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_STATUS_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1707 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_SUMMARY_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1708 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_TRANSP_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1709 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_TRIGGER_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1710 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_TZID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1711 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_TZNAME_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1712 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_TZOFFSETFROM_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1713 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_TZOFFSETTO_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1714 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_TZURL_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1715 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_UID_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1716 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_URL_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1717 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_VERSION_PROPERTY,ICAL_RESTRICTION_ZERO,0}, 1718 {ICAL_METHOD_NONE,ICAL_XPROCEDUREALARM_COMPONENT,ICAL_X_PROPERTY,ICAL_RESTRICTION_ZEROPLUS,0}, 1719 {ICAL_METHOD_NONE,ICAL_VQUERY_COMPONENT,ICAL_QUERY_PROPERTY,ICAL_RESTRICTION_ZEROORONE,0}, 1720 {ICAL_METHOD_NONE,ICAL_VQUERY_COMPONENT,ICAL_QUERYNAME_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1721 {ICAL_METHOD_NONE,ICAL_VQUERY_COMPONENT,ICAL_EXPAND_PROPERTY,ICAL_RESTRICTION_ONE,0}, 1722 {ICAL_METHOD_NONE,ICAL_NO_COMPONENT,ICAL_NO_PROPERTY,ICAL_RESTRICTION_NONE} 1723 }; 1724 static const icalrestriction_component_record icalrestriction_component_records[] = { 1725 {ICAL_METHOD_PUBLISH,ICAL_VEVENT_COMPONENT,ICAL_VALARM_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,0}, 1726 {ICAL_METHOD_PUBLISH,ICAL_VEVENT_COMPONENT,ICAL_VFREEBUSY_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1727 {ICAL_METHOD_PUBLISH,ICAL_VEVENT_COMPONENT,ICAL_VJOURNAL_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1728 {ICAL_METHOD_PUBLISH,ICAL_VEVENT_COMPONENT,ICAL_VTODO_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1729 {ICAL_METHOD_PUBLISH,ICAL_VEVENT_COMPONENT,ICAL_VTIMEZONE_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,icalrestriction_must_if_tz_ref}, 1730 {ICAL_METHOD_PUBLISH,ICAL_VEVENT_COMPONENT,ICAL_X_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,0}, 1731 {ICAL_METHOD_REQUEST,ICAL_VEVENT_COMPONENT,ICAL_VALARM_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,0}, 1732 {ICAL_METHOD_REQUEST,ICAL_VEVENT_COMPONENT,ICAL_VTIMEZONE_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,icalrestriction_must_if_tz_ref}, 1733 {ICAL_METHOD_REQUEST,ICAL_VEVENT_COMPONENT,ICAL_X_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,0}, 1734 {ICAL_METHOD_REQUEST,ICAL_VEVENT_COMPONENT,ICAL_VFREEBUSY_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1735 {ICAL_METHOD_REQUEST,ICAL_VEVENT_COMPONENT,ICAL_VJOURNAL_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1736 {ICAL_METHOD_REQUEST,ICAL_VEVENT_COMPONENT,ICAL_VTODO_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1737 {ICAL_METHOD_REPLY,ICAL_VEVENT_COMPONENT,ICAL_VTIMEZONE_COMPONENT,ICAL_RESTRICTION_ZEROORONE,icalrestriction_must_if_tz_ref}, 1738 {ICAL_METHOD_REPLY,ICAL_VEVENT_COMPONENT,ICAL_X_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,0}, 1739 {ICAL_METHOD_REPLY,ICAL_VEVENT_COMPONENT,ICAL_VALARM_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1740 {ICAL_METHOD_REPLY,ICAL_VEVENT_COMPONENT,ICAL_VFREEBUSY_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1741 {ICAL_METHOD_REPLY,ICAL_VEVENT_COMPONENT,ICAL_VJOURNAL_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1742 {ICAL_METHOD_REPLY,ICAL_VEVENT_COMPONENT,ICAL_VTODO_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1743 {ICAL_METHOD_ADD,ICAL_VEVENT_COMPONENT,ICAL_VALARM_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,0}, 1744 {ICAL_METHOD_ADD,ICAL_VEVENT_COMPONENT,ICAL_VTIMEZONE_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,icalrestriction_must_if_tz_ref}, 1745 {ICAL_METHOD_ADD,ICAL_VEVENT_COMPONENT,ICAL_X_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,0}, 1746 {ICAL_METHOD_ADD,ICAL_VEVENT_COMPONENT,ICAL_VFREEBUSY_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1747 {ICAL_METHOD_ADD,ICAL_VEVENT_COMPONENT,ICAL_VTODO_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1748 {ICAL_METHOD_ADD,ICAL_VEVENT_COMPONENT,ICAL_VJOURNAL_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1749 {ICAL_METHOD_CANCEL,ICAL_VEVENT_COMPONENT,ICAL_VTIMEZONE_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,icalrestriction_must_if_tz_ref}, 1750 {ICAL_METHOD_CANCEL,ICAL_VEVENT_COMPONENT,ICAL_X_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,0}, 1751 {ICAL_METHOD_CANCEL,ICAL_VEVENT_COMPONENT,ICAL_VTODO_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1752 {ICAL_METHOD_CANCEL,ICAL_VEVENT_COMPONENT,ICAL_VJOURNAL_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1753 {ICAL_METHOD_CANCEL,ICAL_VEVENT_COMPONENT,ICAL_VFREEBUSY_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1754 {ICAL_METHOD_CANCEL,ICAL_VEVENT_COMPONENT,ICAL_VALARM_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1755 {ICAL_METHOD_REFRESH,ICAL_VEVENT_COMPONENT,ICAL_X_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,0}, 1756 {ICAL_METHOD_REFRESH,ICAL_VEVENT_COMPONENT,ICAL_VTODO_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1757 {ICAL_METHOD_REFRESH,ICAL_VEVENT_COMPONENT,ICAL_VJOURNAL_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1758 {ICAL_METHOD_REFRESH,ICAL_VEVENT_COMPONENT,ICAL_VFREEBUSY_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1759 {ICAL_METHOD_REFRESH,ICAL_VEVENT_COMPONENT,ICAL_VTIMEZONE_COMPONENT,ICAL_RESTRICTION_ZERO,icalrestriction_must_if_tz_ref}, 1760 {ICAL_METHOD_REFRESH,ICAL_VEVENT_COMPONENT,ICAL_VALARM_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1761 {ICAL_METHOD_COUNTER,ICAL_VEVENT_COMPONENT,ICAL_VALARM_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,0}, 1762 {ICAL_METHOD_COUNTER,ICAL_VEVENT_COMPONENT,ICAL_VTIMEZONE_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,icalrestriction_must_if_tz_ref}, 1763 {ICAL_METHOD_COUNTER,ICAL_VEVENT_COMPONENT,ICAL_X_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,0}, 1764 {ICAL_METHOD_COUNTER,ICAL_VEVENT_COMPONENT,ICAL_VTODO_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1765 {ICAL_METHOD_COUNTER,ICAL_VEVENT_COMPONENT,ICAL_VJOURNAL_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1766 {ICAL_METHOD_COUNTER,ICAL_VEVENT_COMPONENT,ICAL_VFREEBUSY_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1767 {ICAL_METHOD_DECLINECOUNTER,ICAL_VEVENT_COMPONENT,ICAL_X_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,0}, 1768 {ICAL_METHOD_DECLINECOUNTER,ICAL_VEVENT_COMPONENT,ICAL_VTODO_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1769 {ICAL_METHOD_DECLINECOUNTER,ICAL_VEVENT_COMPONENT,ICAL_VJOURNAL_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1770 {ICAL_METHOD_DECLINECOUNTER,ICAL_VEVENT_COMPONENT,ICAL_VFREEBUSY_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1771 {ICAL_METHOD_DECLINECOUNTER,ICAL_VEVENT_COMPONENT,ICAL_VTIMEZONE_COMPONENT,ICAL_RESTRICTION_ZERO,icalrestriction_must_if_tz_ref}, 1772 {ICAL_METHOD_DECLINECOUNTER,ICAL_VEVENT_COMPONENT,ICAL_VALARM_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1773 {ICAL_METHOD_PUBLISH,ICAL_VFREEBUSY_COMPONENT,ICAL_X_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,0}, 1774 {ICAL_METHOD_PUBLISH,ICAL_VFREEBUSY_COMPONENT,ICAL_VEVENT_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1775 {ICAL_METHOD_PUBLISH,ICAL_VFREEBUSY_COMPONENT,ICAL_VTODO_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1776 {ICAL_METHOD_PUBLISH,ICAL_VFREEBUSY_COMPONENT,ICAL_VJOURNAL_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1777 {ICAL_METHOD_PUBLISH,ICAL_VFREEBUSY_COMPONENT,ICAL_VTIMEZONE_COMPONENT,ICAL_RESTRICTION_ZERO,icalrestriction_must_if_tz_ref}, 1778 {ICAL_METHOD_PUBLISH,ICAL_VFREEBUSY_COMPONENT,ICAL_VALARM_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1779 {ICAL_METHOD_REQUEST,ICAL_VFREEBUSY_COMPONENT,ICAL_X_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,0}, 1780 {ICAL_METHOD_REQUEST,ICAL_VFREEBUSY_COMPONENT,ICAL_VALARM_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1781 {ICAL_METHOD_REQUEST,ICAL_VFREEBUSY_COMPONENT,ICAL_VEVENT_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1782 {ICAL_METHOD_REQUEST,ICAL_VFREEBUSY_COMPONENT,ICAL_VTODO_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1783 {ICAL_METHOD_REQUEST,ICAL_VFREEBUSY_COMPONENT,ICAL_VJOURNAL_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1784 {ICAL_METHOD_REQUEST,ICAL_VFREEBUSY_COMPONENT,ICAL_VTIMEZONE_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1785 {ICAL_METHOD_REPLY,ICAL_VFREEBUSY_COMPONENT,ICAL_X_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,0}, 1786 {ICAL_METHOD_REPLY,ICAL_VFREEBUSY_COMPONENT,ICAL_VALARM_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1787 {ICAL_METHOD_REPLY,ICAL_VFREEBUSY_COMPONENT,ICAL_VEVENT_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1788 {ICAL_METHOD_REPLY,ICAL_VFREEBUSY_COMPONENT,ICAL_VTODO_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1789 {ICAL_METHOD_REPLY,ICAL_VFREEBUSY_COMPONENT,ICAL_VJOURNAL_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1790 {ICAL_METHOD_REPLY,ICAL_VFREEBUSY_COMPONENT,ICAL_VTIMEZONE_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1791 {ICAL_METHOD_PUBLISH,ICAL_VTODO_COMPONENT,ICAL_VTIMEZONE_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,0}, 1792 {ICAL_METHOD_PUBLISH,ICAL_VTODO_COMPONENT,ICAL_VALARM_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,0}, 1793 {ICAL_METHOD_PUBLISH,ICAL_VTODO_COMPONENT,ICAL_X_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,0}, 1794 {ICAL_METHOD_PUBLISH,ICAL_VTODO_COMPONENT,ICAL_VFREEBUSY_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1795 {ICAL_METHOD_PUBLISH,ICAL_VTODO_COMPONENT,ICAL_VEVENT_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1796 {ICAL_METHOD_PUBLISH,ICAL_VTODO_COMPONENT,ICAL_VJOURNAL_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1797 {ICAL_METHOD_REQUEST,ICAL_VTODO_COMPONENT,ICAL_VALARM_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,0}, 1798 {ICAL_METHOD_REQUEST,ICAL_VTODO_COMPONENT,ICAL_VTIMEZONE_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,0}, 1799 {ICAL_METHOD_REQUEST,ICAL_VTODO_COMPONENT,ICAL_X_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,0}, 1800 {ICAL_METHOD_REQUEST,ICAL_VTODO_COMPONENT,ICAL_VEVENT_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1801 {ICAL_METHOD_REQUEST,ICAL_VTODO_COMPONENT,ICAL_VFREEBUSY_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1802 {ICAL_METHOD_REQUEST,ICAL_VTODO_COMPONENT,ICAL_VJOURNAL_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1803 {ICAL_METHOD_REPLY,ICAL_VTODO_COMPONENT,ICAL_VTIMEZONE_COMPONENT,ICAL_RESTRICTION_ZEROORONE,0}, 1804 {ICAL_METHOD_REPLY,ICAL_VTODO_COMPONENT,ICAL_X_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,0}, 1805 {ICAL_METHOD_REPLY,ICAL_VTODO_COMPONENT,ICAL_VALARM_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1806 {ICAL_METHOD_REPLY,ICAL_VTODO_COMPONENT,ICAL_VEVENT_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1807 {ICAL_METHOD_REPLY,ICAL_VTODO_COMPONENT,ICAL_VFREEBUSY_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1808 {ICAL_METHOD_ADD,ICAL_VTODO_COMPONENT,ICAL_VALARM_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,0}, 1809 {ICAL_METHOD_ADD,ICAL_VTODO_COMPONENT,ICAL_VTIMEZONE_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,0}, 1810 {ICAL_METHOD_ADD,ICAL_VTODO_COMPONENT,ICAL_X_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,0}, 1811 {ICAL_METHOD_ADD,ICAL_VTODO_COMPONENT,ICAL_VEVENT_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1812 {ICAL_METHOD_ADD,ICAL_VTODO_COMPONENT,ICAL_VJOURNAL_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1813 {ICAL_METHOD_ADD,ICAL_VTODO_COMPONENT,ICAL_VFREEBUSY_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1814 {ICAL_METHOD_CANCEL,ICAL_VTODO_COMPONENT,ICAL_VTIMEZONE_COMPONENT,ICAL_RESTRICTION_ZEROORONE,0}, 1815 {ICAL_METHOD_CANCEL,ICAL_VTODO_COMPONENT,ICAL_X_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,0}, 1816 {ICAL_METHOD_CANCEL,ICAL_VTODO_COMPONENT,ICAL_VALARM_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1817 {ICAL_METHOD_CANCEL,ICAL_VTODO_COMPONENT,ICAL_VEVENT_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1818 {ICAL_METHOD_CANCEL,ICAL_VTODO_COMPONENT,ICAL_VFREEBUSY_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1819 {ICAL_METHOD_REFRESH,ICAL_VTODO_COMPONENT,ICAL_X_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,0}, 1820 {ICAL_METHOD_REFRESH,ICAL_VTODO_COMPONENT,ICAL_VALARM_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1821 {ICAL_METHOD_REFRESH,ICAL_VTODO_COMPONENT,ICAL_VEVENT_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1822 {ICAL_METHOD_REFRESH,ICAL_VTODO_COMPONENT,ICAL_VFREEBUSY_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1823 {ICAL_METHOD_REFRESH,ICAL_VTODO_COMPONENT,ICAL_VTIMEZONE_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1824 {ICAL_METHOD_COUNTER,ICAL_VTODO_COMPONENT,ICAL_VALARM_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,0}, 1825 {ICAL_METHOD_COUNTER,ICAL_VTODO_COMPONENT,ICAL_VTIMEZONE_COMPONENT,ICAL_RESTRICTION_ZEROORONE,0}, 1826 {ICAL_METHOD_COUNTER,ICAL_VTODO_COMPONENT,ICAL_X_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,0}, 1827 {ICAL_METHOD_COUNTER,ICAL_VTODO_COMPONENT,ICAL_VEVENT_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1828 {ICAL_METHOD_COUNTER,ICAL_VTODO_COMPONENT,ICAL_VFREEBUSY_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1829 {ICAL_METHOD_DECLINECOUNTER,ICAL_VTODO_COMPONENT,ICAL_VTIMEZONE_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,0}, 1830 {ICAL_METHOD_DECLINECOUNTER,ICAL_VTODO_COMPONENT,ICAL_X_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,0}, 1831 {ICAL_METHOD_DECLINECOUNTER,ICAL_VTODO_COMPONENT,ICAL_VALARM_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1832 {ICAL_METHOD_DECLINECOUNTER,ICAL_VTODO_COMPONENT,ICAL_VEVENT_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1833 {ICAL_METHOD_DECLINECOUNTER,ICAL_VTODO_COMPONENT,ICAL_VFREEBUSY_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1834 {ICAL_METHOD_PUBLISH,ICAL_VJOURNAL_COMPONENT,ICAL_VALARM_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,0}, 1835 {ICAL_METHOD_PUBLISH,ICAL_VJOURNAL_COMPONENT,ICAL_VTIMEZONE_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,0}, 1836 {ICAL_METHOD_PUBLISH,ICAL_VJOURNAL_COMPONENT,ICAL_X_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,0}, 1837 {ICAL_METHOD_PUBLISH,ICAL_VJOURNAL_COMPONENT,ICAL_VEVENT_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1838 {ICAL_METHOD_PUBLISH,ICAL_VJOURNAL_COMPONENT,ICAL_VFREEBUSY_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1839 {ICAL_METHOD_PUBLISH,ICAL_VJOURNAL_COMPONENT,ICAL_VTODO_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1840 {ICAL_METHOD_ADD,ICAL_VJOURNAL_COMPONENT,ICAL_VALARM_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,0}, 1841 {ICAL_METHOD_ADD,ICAL_VJOURNAL_COMPONENT,ICAL_VTIMEZONE_COMPONENT,ICAL_RESTRICTION_ZEROORONE,0}, 1842 {ICAL_METHOD_ADD,ICAL_VJOURNAL_COMPONENT,ICAL_X_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,0}, 1843 {ICAL_METHOD_ADD,ICAL_VJOURNAL_COMPONENT,ICAL_VEVENT_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1844 {ICAL_METHOD_ADD,ICAL_VJOURNAL_COMPONENT,ICAL_VFREEBUSY_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1845 {ICAL_METHOD_ADD,ICAL_VJOURNAL_COMPONENT,ICAL_VTODO_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1846 {ICAL_METHOD_CANCEL,ICAL_VJOURNAL_COMPONENT,ICAL_VTIMEZONE_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,0}, 1847 {ICAL_METHOD_CANCEL,ICAL_VJOURNAL_COMPONENT,ICAL_X_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,0}, 1848 {ICAL_METHOD_CANCEL,ICAL_VJOURNAL_COMPONENT,ICAL_VALARM_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1849 {ICAL_METHOD_CANCEL,ICAL_VJOURNAL_COMPONENT,ICAL_VEVENT_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1850 {ICAL_METHOD_CANCEL,ICAL_VJOURNAL_COMPONENT,ICAL_VFREEBUSY_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1851 {ICAL_METHOD_CANCEL,ICAL_VJOURNAL_COMPONENT,ICAL_VTODO_COMPONENT,ICAL_RESTRICTION_ZERO,0}, 1852 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_XSTANDARD_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,0}, 1853 {ICAL_METHOD_NONE,ICAL_VTIMEZONE_COMPONENT,ICAL_XDAYLIGHT_COMPONENT,ICAL_RESTRICTION_ZEROPLUS,0}, 1854 {ICAL_METHOD_NONE,ICAL_NO_COMPONENT,ICAL_NO_COMPONENT,ICAL_RESTRICTION_NONE} 1855 }; 1856 1857 static const icalrestriction_property_record* 1858 icalrestriction_get_property_restriction(icalproperty_method method, 1859 icalcomponent_kind component, 1860 icalproperty_kind property) 1861 { 1862 int i; 1863 1864 for(i = 0; 1865 icalrestriction_property_records[i].restriction != ICAL_RESTRICTION_NONE; 1866 i++){ 1867 1868 if (method == icalrestriction_property_records[i].method && 1869 component == icalrestriction_property_records[i].component && 1870 property == icalrestriction_property_records[i].property ){ 1871 return &icalrestriction_property_records[i]; 1872 } 1873 } 1874 1875 return &null_prop_record; 1876 } 1877 1878 1879 static const icalrestriction_component_record* 1880 icalrestriction_get_component_restriction(icalproperty_method method, 1881 icalcomponent_kind component, 1882 icalcomponent_kind subcomponent) 1883 { 1884 1885 int i; 1886 1887 for(i = 0; 1888 icalrestriction_component_records[i].restriction != ICAL_RESTRICTION_NONE; 1889 i++){ 1890 1891 if (method == icalrestriction_component_records[i].method && 1892 component == icalrestriction_component_records[i].component && 1893 subcomponent == icalrestriction_component_records[i].subcomponent ){ 1894 return &icalrestriction_component_records[i]; 1895 } 1896 } 1897 1898 return &null_comp_record; 1899 }
Note: See TracBrowser
for help on using the repository browser.