Lines Matching defs:dest

209 static int parser_key(sf_parser *sfp, sf_vec *dest) {
236 if (dest) {
237 dest->base = (uint8_t *)base;
238 dest->len = (size_t)(sfp->pos - dest->base);
244 static int parser_number(sf_parser *sfp, sf_value *dest) {
282 if (dest) {
283 dest->type = SF_TYPE_INTEGER;
284 dest->flags = SF_VALUE_FLAG_NONE;
285 dest->integer = value * sign;
321 if (dest) {
322 dest->type = SF_TYPE_DECIMAL;
323 dest->flags = SF_VALUE_FLAG_NONE;
324 dest->decimal.numer = value * sign;
328 dest->decimal.denom = 10;
332 dest->decimal.denom = 100;
336 dest->decimal.denom = 1000;
345 static int parser_date(sf_parser *sfp, sf_value *dest) {
367 if (dest) {
368 *dest = val;
369 dest->type = SF_TYPE_DATE;
375 static int parser_string(sf_parser *sfp, sf_value *dest) {
408 if (dest) {
409 dest->type = SF_TYPE_STRING;
410 dest->flags = flags;
411 dest->vec.len = (size_t)(sfp->pos - base);
412 dest->vec.base = dest->vec.len == 0 ? NULL : (uint8_t *)base;
426 static int parser_token(sf_parser *sfp, sf_value *dest) {
459 if (dest) {
460 dest->type = SF_TYPE_TOKEN;
461 dest->flags = SF_VALUE_FLAG_NONE;
462 dest->vec.base = (uint8_t *)base;
463 dest->vec.len = (size_t)(sfp->pos - base);
469 static int parser_byteseq(sf_parser *sfp, sf_value *dest) {
554 if (dest) {
555 dest->type = SF_TYPE_BYTESEQ;
556 dest->flags = SF_VALUE_FLAG_NONE;
557 dest->vec.len = (size_t)(sfp->pos - base);
558 dest->vec.base = dest->vec.len == 0 ? NULL : (uint8_t *)base;
566 static int parser_boolean(sf_parser *sfp, sf_value *dest) {
593 if (dest) {
594 dest->type = SF_TYPE_BOOLEAN;
595 dest->flags = SF_VALUE_FLAG_NONE;
596 dest->boolean = b;
602 static int parser_bare_item(sf_parser *sfp, sf_value *dest) {
605 return parser_string(sfp, dest);
608 return parser_number(sfp, dest);
610 return parser_date(sfp, dest);
612 return parser_byteseq(sfp, dest);
614 return parser_boolean(sfp, dest);
617 return parser_token(sfp, dest);
703 int sf_parser_inner_list(sf_parser *sfp, sf_value *dest) {
759 rv = parser_bare_item(sfp, dest);
809 static int parser_dict_value(sf_parser *sfp, sf_value *dest) {
814 if (dest) {
815 dest->type = SF_TYPE_BOOLEAN;
816 dest->flags = SF_VALUE_FLAG_NONE;
817 dest->boolean = 1;
832 if (dest) {
833 dest->type = SF_TYPE_INNER_LIST;
834 dest->flags = SF_VALUE_FLAG_NONE;
844 rv = parser_bare_item(sfp, dest);
900 int sf_parser_list(sf_parser *sfp, sf_value *dest) {
939 if (dest) {
940 dest->type = SF_TYPE_INNER_LIST;
941 dest->flags = SF_VALUE_FLAG_NONE;
951 rv = parser_bare_item(sfp, dest);
961 int sf_parser_item(sf_parser *sfp, sf_value *dest) {
1001 if (dest) {
1002 dest->type = SF_TYPE_INNER_LIST;
1003 dest->flags = SF_VALUE_FLAG_NONE;
1013 rv = parser_bare_item(sfp, dest);
1034 void sf_unescape(sf_vec *dest, const sf_vec *src) {
1040 *dest = *src;
1045 o = dest->base;
1053 *dest = *src;
1073 dest->len = (size_t)(o - dest->base);
1076 void sf_base64decode(sf_vec *dest, const sf_vec *src) {
1102 *dest = *src;
1107 o = dest->base;
1145 dest->len = (size_t)(o - dest->base);