| 1002 | */ |
| 1003 | |
| 1004 | YAML_DECLARE(void) |
| 1005 | yaml_event_delete(yaml_event_t *event) |
| 1006 | { |
| 1007 | yaml_tag_directive_t *tag_directive; |
| 1008 | |
| 1009 | assert(event); /* Non-NULL event object expected. */ |
| 1010 | |
| 1011 | switch (event->type) |
| 1012 | { |
| 1013 | case YAML_DOCUMENT_START_EVENT: |
| 1014 | yaml_free(event->data.document_start.version_directive); |
| 1015 | for (tag_directive = event->data.document_start.tag_directives.start; |
| 1016 | tag_directive != event->data.document_start.tag_directives.end; |
| 1017 | tag_directive++) { |
| 1018 | yaml_free(tag_directive->handle); |
| 1019 | yaml_free(tag_directive->prefix); |
| 1020 | } |
| 1021 | yaml_free(event->data.document_start.tag_directives.start); |
| 1022 | break; |
| 1023 | |
| 1024 | case YAML_ALIAS_EVENT: |
| 1025 | yaml_free(event->data.alias.anchor); |
| 1026 | break; |
| 1027 | |
| 1028 | case YAML_SCALAR_EVENT: |
| 1029 | yaml_free(event->data.scalar.anchor); |
| 1030 | yaml_free(event->data.scalar.tag); |
| 1031 | yaml_free(event->data.scalar.value); |
| 1032 | break; |
| 1033 | |
| 1034 | case YAML_SEQUENCE_START_EVENT: |
| 1035 | yaml_free(event->data.sequence_start.anchor); |
| 1036 | yaml_free(event->data.sequence_start.tag); |
| 1037 | break; |
| 1038 | |
| 1039 | case YAML_MAPPING_START_EVENT: |
| 1040 | yaml_free(event->data.mapping_start.anchor); |
| 1041 | yaml_free(event->data.mapping_start.tag); |
| 1042 | break; |
| 1043 | |
| 1044 | default: |
| 1045 | break; |
| 1046 | } |
| 1047 | |
| 1048 | memset(event, 0, sizeof(yaml_event_t)); |
| 1049 | } |
| 1050 | |
| 1051 | /* |
| 1052 | * Create a document object. |
no test coverage detected