Skip to content

Commit 20317a2

Browse files
committed
Swift: make width fields unsigned
1 parent 9c5b2d7 commit 20317a2

File tree

2 files changed

+31
-30
lines changed

2 files changed

+31
-30
lines changed

swift/codegen/lib/cpp.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
"xor", "xor_eq"}
1717

1818
_field_overrides = [
19-
(re.compile(r"(start|end)_(line|column)|index|num_.*"), {"type": "unsigned"}),
19+
(re.compile(r"(start|end)_(line|column)|index|width|num_.*"), {"type": "unsigned"}),
2020
(re.compile(r"(.*)_"), lambda m: {"name": m[1]}),
2121
]
2222

swift/codegen/test/test_cppgen.py

Lines changed: 30 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,8 @@ def test_empty_class(generate):
3636
assert generate([
3737
schema.Class(name="MyClass"),
3838
]) == [
39-
cpp.Class(name="MyClass", final=True, trap_name="MyClasses")
40-
]
39+
cpp.Class(name="MyClass", final=True, trap_name="MyClasses")
40+
]
4141

4242

4343
def test_two_class_hierarchy(generate):
@@ -46,9 +46,9 @@ def test_two_class_hierarchy(generate):
4646
schema.Class(name="A", derived={"B"}),
4747
schema.Class(name="B", bases={"A"}),
4848
]) == [
49-
base,
50-
cpp.Class(name="B", bases=[base], final=True, trap_name="Bs"),
51-
]
49+
base,
50+
cpp.Class(name="B", bases=[base], final=True, trap_name="Bs"),
51+
]
5252

5353

5454
def test_complex_hierarchy_topologically_ordered(generate):
@@ -84,37 +84,38 @@ def test_class_with_field(generate, type, expected, property_cls, optional, repe
8484
assert generate([
8585
schema.Class(name="MyClass", properties=[property_cls("prop", type)]),
8686
]) == [
87-
cpp.Class(name="MyClass",
88-
fields=[cpp.Field("prop", expected, is_optional=optional,
89-
is_repeated=repeated, trap_name=trap_name)],
90-
trap_name="MyClasses",
91-
final=True)
92-
]
87+
cpp.Class(name="MyClass",
88+
fields=[cpp.Field("prop", expected, is_optional=optional,
89+
is_repeated=repeated, trap_name=trap_name)],
90+
trap_name="MyClasses",
91+
final=True)
92+
]
9393

9494

95-
@pytest.mark.parametrize("name", ["start_line", "start_column", "end_line", "end_column", "index", "num_whatever"])
95+
@pytest.mark.parametrize("name",
96+
["start_line", "start_column", "end_line", "end_column", "index", "num_whatever", "width"])
9697
def test_class_with_overridden_unsigned_field(generate, name):
9798
assert generate([
9899
schema.Class(name="MyClass", properties=[
99-
schema.SingleProperty(name, "bar")]),
100+
schema.SingleProperty(name, "bar")]),
100101
]) == [
101-
cpp.Class(name="MyClass",
102-
fields=[cpp.Field(name, "unsigned")],
103-
trap_name="MyClasses",
104-
final=True)
105-
]
102+
cpp.Class(name="MyClass",
103+
fields=[cpp.Field(name, "unsigned")],
104+
trap_name="MyClasses",
105+
final=True)
106+
]
106107

107108

108109
def test_class_with_overridden_underscore_field(generate):
109110
assert generate([
110111
schema.Class(name="MyClass", properties=[
111-
schema.SingleProperty("something_", "bar")]),
112+
schema.SingleProperty("something_", "bar")]),
112113
]) == [
113-
cpp.Class(name="MyClass",
114-
fields=[cpp.Field("something", "bar")],
115-
trap_name="MyClasses",
116-
final=True)
117-
]
114+
cpp.Class(name="MyClass",
115+
fields=[cpp.Field("something", "bar")],
116+
trap_name="MyClasses",
117+
final=True)
118+
]
118119

119120

120121
@pytest.mark.parametrize("name", cpp.cpp_keywords)
@@ -123,11 +124,11 @@ def test_class_with_keyword_field(generate, name):
123124
schema.Class(name="MyClass", properties=[
124125
schema.SingleProperty(name, "bar")]),
125126
]) == [
126-
cpp.Class(name="MyClass",
127-
fields=[cpp.Field(name + "_", "bar")],
128-
trap_name="MyClasses",
129-
final=True)
130-
]
127+
cpp.Class(name="MyClass",
128+
fields=[cpp.Field(name + "_", "bar")],
129+
trap_name="MyClasses",
130+
final=True)
131+
]
131132

132133

133134
if __name__ == '__main__':

0 commit comments

Comments
 (0)