[Xorp-cvs] SF.net SVN: xorp:[11669] trunk/xorp/xrl/scripts/Xif/parse.py
bms_fbsd at users.sourceforge.net
bms_fbsd at users.sourceforge.net
Thu Dec 3 15:45:55 PST 2009
Revision: 11669
http://xorp.svn.sourceforge.net/xorp/?rev=11669&view=rev
Author: bms_fbsd
Date: 2009-12-03 23:45:55 +0000 (Thu, 03 Dec 2009)
Log Message:
-----------
Make the use of the name:list<member_type> syntax mandatory in the
XIF parser. XIF files must now fully declare the types embedded in
any XrlAtomLists they instantiate.
Obtained from: xorp-thrift branch
Modified Paths:
--------------
trunk/xorp/xrl/scripts/Xif/parse.py
Modified: trunk/xorp/xrl/scripts/Xif/parse.py
===================================================================
--- trunk/xorp/xrl/scripts/Xif/parse.py 2009-12-03 23:39:30 UTC (rev 11668)
+++ trunk/xorp/xrl/scripts/Xif/parse.py 2009-12-03 23:45:55 UTC (rev 11669)
@@ -105,6 +105,7 @@
validate_name(file, lineno, "Atom", name, '_-')
+ # Parse <type>\<<member_type>\> (\<\> are literal angle brackets).
lab = string.find(type, "<")
member_type = None
if lab != -1:
@@ -117,12 +118,12 @@
if xrl_atom_type.has_key(type) == 0:
quit(file, lineno, "Atom type \"%s\" not amongst those known %s"
% (type, xrl_atom_type.keys()))
-
xa = XrlArg(name, type)
if type == 'list':
- # TODO: Force syntax check that member_type is present.
+ # Deal with type of members embedded in the container. These
+ # are now mandatory for XIF in this branch.
if xrl_atom_type.has_key(member_type) == 0:
- warn(file, lineno, "Member atom type \"%s\" not amongst those known %s" % (member_type, xrl_atom_type.keys()))
+ quit(file, lineno, "Member atom type \"%s\" not amongst those known %s" % (member_type, xrl_atom_type.keys()))
xa.set_member_type(member_type)
xrl_args.append(xa)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Xorp-cvs
mailing list