summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWill Thompson <will.thompson@collabora.co.uk>2012-02-27 17:37:35 +0000
committerJohan Dahlin <jdahlin@litl.com>2012-04-09 12:05:31 -0300
commit5030e41034f607a3cdb9aab6324f3b3b7099f9ad (patch)
tree60de4c06d11ca4a6cb7f4aaca6a865c827e1894d
parent639c4ed8f42dbed31a4fda8f56c25ef42e9f415f (diff)
downloadgobject-introspection-5030e41034f607a3cdb9aab6324f3b3b7099f9ad.tar.gz
annotationparser: remove duplication of annotation names
Previously, the validation code compared each option name to a constant (such as OPT_ALLOW_NONE) which expands to the string used in a source file, and if they matched it would typically pass that same string to _validate_option(). But the annotation name was written out longhand each time, which seemed strange to me. https://bugzilla.gnome.org/show_bug.cgi?id=670985
-rw-r--r--giscanner/annotationparser.py26
1 files changed, 13 insertions, 13 deletions
diff --git a/giscanner/annotationparser.py b/giscanner/annotationparser.py
index 16c75453..76f31243 100644
--- a/giscanner/annotationparser.py
+++ b/giscanner/annotationparser.py
@@ -285,7 +285,7 @@ class DocTag(object):
for option in self.options:
value = self.options[option]
if option == OPT_ALLOW_NONE:
- self._validate_option('allow-none', value, n_params=0)
+ self._validate_option(option, value, n_params=0)
elif option == OPT_ARRAY:
if value is None:
continue
@@ -317,7 +317,7 @@ class DocTag(object):
name, ), self.position)
elif option == OPT_ATTRIBUTE:
- self._validate_option('attribute', value, n_params=2)
+ self._validate_option(option, value, n_params=2)
elif option == OPT_CLOSURE:
if value is not None and value.length() > 1:
message.warn(
@@ -325,9 +325,9 @@ class DocTag(object):
value.length()), self.position)
continue
elif option == OPT_DESTROY:
- self._validate_option('destroy', value, n_params=1)
+ self._validate_option(option, value, n_params=1)
elif option == OPT_ELEMENT_TYPE:
- self._validate_option('element-type', value, required=True)
+ self._validate_option(option, value, required=True)
if value is None:
message.warn(
'element-type takes at least one value, none given',
@@ -339,11 +339,11 @@ class DocTag(object):
value.length()), self.position)
continue
elif option == OPT_FOREIGN:
- self._validate_option('foreign', value, n_params=0)
+ self._validate_option(option, value, n_params=0)
elif option == OPT_IN:
- self._validate_option('in', value, n_params=0)
+ self._validate_option(option, value, n_params=0)
elif option in [OPT_INOUT, OPT_INOUT_ALT]:
- self._validate_option('inout', value, n_params=0)
+ self._validate_option(option, value, n_params=0)
elif option == OPT_OUT:
if value is None:
continue
@@ -360,28 +360,28 @@ class DocTag(object):
continue
elif option == OPT_SCOPE:
self._validate_option(
- 'scope', value, required=True,
+ option, value, required=True,
n_params=1,
choices=[OPT_SCOPE_ASYNC,
OPT_SCOPE_CALL,
OPT_SCOPE_NOTIFIED])
elif option == OPT_SKIP:
- self._validate_option('skip', value, n_params=0)
+ self._validate_option(option, value, n_params=0)
elif option == OPT_TRANSFER:
self._validate_option(
- 'transfer', value, required=True,
+ option, value, required=True,
n_params=1,
choices=[OPT_TRANSFER_FULL,
OPT_TRANSFER_CONTAINER,
OPT_TRANSFER_NONE,
OPT_TRANSFER_FLOATING])
elif option == OPT_TYPE:
- self._validate_option('type', value, required=True,
+ self._validate_option(option, value, required=True,
n_params=1)
elif option == OPT_CONSTRUCTOR:
- self._validate_option('constructor', value, n_params=0)
+ self._validate_option(option, value, n_params=0)
elif option == OPT_METHOD:
- self._validate_option('method', value, n_params=0)
+ self._validate_option(option, value, n_params=0)
else:
message.warn('invalid annotation option: %s' % (option, ),
self.position)