Let '==' separate names from definition bodies.
This commit is contained in:
parent
90eef110d1
commit
40a627b5ca
|
|
@ -258,7 +258,19 @@ class DefinitionWrapper(object):
|
||||||
Given some text describing a Joy function definition parse it and
|
Given some text describing a Joy function definition parse it and
|
||||||
return a DefinitionWrapper.
|
return a DefinitionWrapper.
|
||||||
'''
|
'''
|
||||||
return class_(*(n.strip() for n in defi.split(None, 1)))
|
# At some point I decided that the definitions file should NOT
|
||||||
|
# use '==' to separate the name from the body. But somehow the
|
||||||
|
# xerblin\gui\default_joy_home\definitions.txt file didn't get
|
||||||
|
# the memo. Nor did the load_definitions() method.
|
||||||
|
# So I think the simplest way forward at the moment will be to
|
||||||
|
# edit this function to expect '=='.
|
||||||
|
|
||||||
|
name, part, body = defi.partition('==')
|
||||||
|
if part:
|
||||||
|
return class_(name.strip(), body.strip())
|
||||||
|
raise ValueError("No '==' in definition text %r" % (defi,))
|
||||||
|
|
||||||
|
# return class_(*(n.strip() for n in defi.split(None, 1)))
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def add_definitions(class_, defs, dictionary):
|
def add_definitions(class_, defs, dictionary):
|
||||||
|
|
@ -289,7 +301,9 @@ def _text_to_defs(text):
|
||||||
return (
|
return (
|
||||||
line.strip()
|
line.strip()
|
||||||
for line in text.splitlines()
|
for line in text.splitlines()
|
||||||
if line and not line.startswith('#')
|
if line
|
||||||
|
and not line.startswith('#')
|
||||||
|
and '==' in line
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue