Skip to content

Commit 43f0dae

Browse files
committed
#2 Add = to allowed characters in args regex. Closes #2
1 parent 2709106 commit 43f0dae

1 file changed

Lines changed: 4 additions & 1 deletion

File tree

mkdocstrings_handlers/vba/util.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -131,14 +131,17 @@ def parse_signature(line: str) -> VbaSignatureInfo:
131131
>>> parse_signature("Public Property Let asdf(ByVal vNewValue As Variant)") # doctest: +NORMALIZE_WHITESPACE
132132
VbaSignatureInfo(visibility='Public', return_type=None, procedure_type='Property Let', name='asdf', \
133133
args=[VbaArgumentInfo(name='vNewValue', optional=False, modifier='ByVal', arg_type='Variant', default=None)])
134+
>>> parse_signature("Function Test(Optional d As Variant = Empty)") # doctest: +NORMALIZE_WHITESPACE
135+
VbaSignatureInfo(visibility=None, return_type=None, procedure_type='Function', name='Test',
136+
args=[VbaArgumentInfo(name='d', optional=True, modifier=None, arg_type='Variant', default='Empty')])
134137
"""
135138
line = re.sub(r"'.*$", "", line).strip() # Strip comment and whitespace.
136139

137140
# https://regex101.com/r/BclPPV/1
138141
match = re.match(
139142
r"^((?P<visibility>Private|Public) +)?"
140143
r"(?P<type>Sub|Function|Property (Let|Get)) *"
141-
r"(?P<name>[A-Z_][A-Z0-9_]*)\( *(?P<args>[A-Z0-9_ ,]*)\)"
144+
r"(?P<name>[A-Z_][A-Z0-9_]*)\( *(?P<args>[A-Z0-9_ ,=]*)\)"
142145
r"( +As +(?P<returnType>[A-Z_][A-Z0-9_]*))?$",
143146
line,
144147
re.IGNORECASE,

0 commit comments

Comments
 (0)