aboutsummaryrefslogtreecommitdiff
path: root/src/utils/parse/spec.py
diff options
context:
space:
mode:
authorGravatar jesopo2020-01-26 02:09:48 +0000
committerGravatar jesopo2020-01-26 02:09:48 +0000
commit41e111599915ad924811fb87f7031ce76c80a3d2 (patch)
tree7bb2084b91a8b7611e76d0a024cb02589780afd8 /src/utils/parse/spec.py
parentsupport command spec literals (diff)
signature
fix typehinting issues
Diffstat (limited to 'src/utils/parse/spec.py')
-rw-r--r--src/utils/parse/spec.py7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/utils/parse/spec.py b/src/utils/parse/spec.py
index 9ed5d4c5..bb0dcc9d 100644
--- a/src/utils/parse/spec.py
+++ b/src/utils/parse/spec.py
@@ -9,7 +9,8 @@ class SpecArgumentContext(enum.IntFlag):
class SpecArgumentType(object):
context = SpecArgumentContext.ALL
- def __init__(self, type_name: str, name: typing.Optional[str], exported: str):
+ def __init__(self, type_name: str, name: typing.Optional[str],
+ exported: typing.Optional[str]):
self.type = type_name
self._name = name
self.exported = exported
@@ -67,7 +68,7 @@ class SpecArgument(object):
def parse(optional: bool, argument_types: typing.List[str]):
out: typing.List[SpecArgumentType] = []
for argument_type in argument_types:
- exported = ""
+ exported = None
if "~" in argument_type:
exported = argument_type.split("~", 1)[1]
argument_type = argument_type.replace("~", "", 1)
@@ -125,7 +126,7 @@ class SpecLiteralArgument(SpecArgument):
return spec_argument
def format(self, context: SpecArgumentContext) -> typing.Optional[str]:
- return "|".join(t.name() for t in self.types)
+ return "|".join(t.name() or "" for t in self.types)
def argument_spec(spec: str) -> typing.List[SpecArgument]:
out: typing.List[SpecArgument] = []