summaryrefslogtreecommitdiff
path: root/upb/def.c
diff options
context:
space:
mode:
authorJoshua Haberman <jhaberman@gmail.com>2018-12-08 13:45:12 +0100
committerJoshua Haberman <jhaberman@gmail.com>2018-12-08 13:45:12 +0100
commitbfa3c015bb8de950d0e6b0076be89df4bc37fba7 (patch)
tree8f0571635334582029f76e22160ef051fe510c5d /upb/def.c
parent14c96a143c63a01c1080a23d9e1c0196d06f0e5e (diff)
parent73ccf4a7c7d8a1a26d1258f44a37c1fc02f4b14b (diff)
Merge branch 'master' into defcleanup
Diffstat (limited to 'upb/def.c')
-rw-r--r--upb/def.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/upb/def.c b/upb/def.c
index ec3df4c..c800319 100644
--- a/upb/def.c
+++ b/upb/def.c
@@ -294,7 +294,9 @@ static void assign_msg_wellknowntype(upb_msgdef *m) {
m->well_known_type = UPB_WELLKNOWN_UNSPECIFIED;
return;
}
- if (!strcmp(name, "google.protobuf.Duration")) {
+ if (!strcmp(name, "google.protobuf.Any")) {
+ m->well_known_type = UPB_WELLKNOWN_ANY;
+ } else if (!strcmp(name, "google.protobuf.Duration")) {
m->well_known_type = UPB_WELLKNOWN_DURATION;
} else if (!strcmp(name, "google.protobuf.Timestamp")) {
m->well_known_type = UPB_WELLKNOWN_TIMESTAMP;
@@ -1273,6 +1275,14 @@ const upb_msgdef *upb_symtab_lookupmsg(const upb_symtab *s, const char *sym) {
return def ? upb_dyncast_msgdef(def) : NULL;
}
+const upb_msgdef *upb_symtab_lookupmsg2(const upb_symtab *s, const char *sym,
+ size_t len) {
+ upb_value v;
+ upb_def *def = upb_strtable_lookup2(&s->symtab, sym, len, &v) ?
+ upb_value_getptr(v) : NULL;
+ return def ? upb_dyncast_msgdef(def) : NULL;
+}
+
const upb_enumdef *upb_symtab_lookupenum(const upb_symtab *s, const char *sym) {
upb_value v;
upb_def *def = upb_strtable_lookup(&s->symtab, sym, &v) ?
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback