aboutsummaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorkukosa <kukosa@f5534014-38df-0310-8fa8-9805f1628bb7>2007-10-31 09:33:54 +0000
committerkukosa <kukosa@f5534014-38df-0310-8fa8-9805f1628bb7>2007-10-31 09:33:54 +0000
commita1b3fa5ac8128579356b84c1793c1fe193803c46 (patch)
tree60019191e4d072967275554091ea6f16e0129be8 /tools
parentfbf087b82ac9b954e42504d9c30445749e7d4fef (diff)
accept VariableTypeValueFieldSpec syntax and ParameterizedObjectClass syntax
git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@23320 f5534014-38df-0310-8fa8-9805f1628bb7
Diffstat (limited to 'tools')
-rwxr-xr-xtools/asn2wrs.py20
1 files changed, 19 insertions, 1 deletions
diff --git a/tools/asn2wrs.py b/tools/asn2wrs.py
index 5ede5b1928..d75592c240 100755
--- a/tools/asn2wrs.py
+++ b/tools/asn2wrs.py
@@ -5310,6 +5310,9 @@ class FixedTypeValueFieldSpec (FieldSpec):
repr = [self.typ.type]
return repr
+class VariableTypeValueFieldSpec (FieldSpec):
+ pass
+
class FixedTypeValueSetFieldSpec (FieldSpec):
pass
@@ -6642,7 +6645,8 @@ def p_ObjectClassAssignment (t):
# 9.2
def p_ObjectClass (t):
'''ObjectClass : DefinedObjectClass
- | ObjectClassDefn'''
+ | ObjectClassDefn
+ | ParameterizedObjectClass '''
t[0] = t[1]
# 9.3
@@ -6667,6 +6671,7 @@ def p_WithSyntaxSpec (t):
def p_FieldSpec (t):
'''FieldSpec : TypeFieldSpec
| FixedTypeValueFieldSpec
+ | VariableTypeValueFieldSpec
| FixedTypeValueSetFieldSpec
| ObjectFieldSpec
| ObjectSetFieldSpec '''
@@ -6704,6 +6709,14 @@ def p_ValueOptionalitySpec_2 (t):
'ValueOptionalitySpec ::= DEFAULT Value'
pass
+# 9.8
+
+def p_VariableTypeValueFieldSpec (t):
+ '''VariableTypeValueFieldSpec : lcasefieldreference FieldName
+ | lcasefieldreference FieldName ValueOptionalitySpec '''
+ t[0] = VariableTypeValueFieldSpec()
+ t[0].SetName(t[1])
+
# 9.9
def p_FixedTypeValueSetFieldSpec (t):
'''FixedTypeValueSetFieldSpec : ucasefieldreference Type
@@ -7242,6 +7255,11 @@ def p_ParameterizedType (t):
#t[0].val += 'xxx'
+def p_ParameterizedObjectClass (t):
+ 'ParameterizedObjectClass : DefinedObjectClass ActualParameterList'
+ t[0] = t[1]
+ #t[0].val += 'xxx'
+
def p_ParameterizedObject (t):
'ParameterizedObject : DefinedObject ActualParameterList'
t[0] = t[1]