summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorJoshua Haberman <jhaberman@gmail.com>2017-07-11 14:14:20 -0500
committerJoshua Haberman <jhaberman@gmail.com>2017-07-11 14:14:20 -0500
commit277c4d584f8a644c9eb8de4f8c71d823fc4a15a2 (patch)
tree0722a3abae37cb267e42f8db39424c52a2631b5f /tools
parent2e01793dede6b3de34370c5f813fb82b2eebb461 (diff)
parent1278ff899409025692d6915421f1af1c99dc837e (diff)
Merge branch 'gencode2' into gencode3
Diffstat (limited to 'tools')
-rw-r--r--tools/make_c_api.lua11
-rw-r--r--tools/upbc.lua4
2 files changed, 10 insertions, 5 deletions
diff --git a/tools/make_c_api.lua b/tools/make_c_api.lua
index 62fd370..9e6d734 100644
--- a/tools/make_c_api.lua
+++ b/tools/make_c_api.lua
@@ -30,11 +30,6 @@ function strip_proto(filename)
return string.gsub(filename, '%.proto$','')
end
---[[
- [upb.TYPE_ENUM] = 5,
- [upb.TYPE_MESSAGE] = 8,
---]]
-
local function join(...)
return table.concat({...}, ".")
end
@@ -154,6 +149,12 @@ local function field_layout_rank(field)
-- 4. string fields
-- 5. submessage fields
-- 6. repeated fields
+ --
+ -- This has the following nice properties:
+ --
+ -- 1. padding alignment is (nearly) minimized.
+ -- 2. fields that might have defaults (1-4) are segregated
+ -- from fields that are always zero-initialized (5-7).
local rank
if field:containing_oneof() then
rank = 100 -- These go last (actually we skip them).
diff --git a/tools/upbc.lua b/tools/upbc.lua
index 9d9531c..a538b1c 100644
--- a/tools/upbc.lua
+++ b/tools/upbc.lua
@@ -23,6 +23,10 @@ for _, argument in ipairs(arg) do
return 1
end
else
+ if src then
+ print("upbc can only handle one input file at a time.")
+ return 1
+ end
src = argument
end
end
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback