Home | History | Annotate | Download | only in nanopb-c

Lines Matching refs:extension

45 static bool checkreturn default_extension_decoder(pb_istream_t *stream, pb_extension_t *extension, uint32_t tag, pb_wire_type_t wire_type);
666 /* Default handler for extension fields. Expects a pb_field_t structure
667 * in extension->type->arg. */
669 pb_extension_t *extension, uint32_t tag, pb_wire_type_t wire_type)
671 const pb_field_t *field = (const pb_field_t*)extension->type->arg;
681 iter.dest_struct = extension->dest;
682 iter.pData = extension->dest;
683 iter.pSize = &extension->found;
688 /* Try to decode an unknown field as an extension field. Tries each extension
693 pb_extension_t *extension = *(pb_extension_t* const *)iter->pData;
696 while (extension != NULL && pos == stream->bytes_left)
699 if (extension->type->decode)
700 status = extension->type->decode(stream, extension, tag, wire_type);
702 status = default_extension_decoder(stream, extension, tag, wire_type);
707 extension = extension->next;
713 /* Step through the iterator until an extension field is found or until all
714 * entries have been checked. There can be only one extension field per
715 * message. Returns false if no extension field is found. */
821 /* No match found, check if it matches an extension. */