Create abstract iterable parser
This commit is contained in:
@@ -11,3 +11,34 @@ def _flatListNode(listItemNode, list = []):
|
||||
list.append(value)
|
||||
_flatListNode(next, list)
|
||||
return list
|
||||
|
||||
|
||||
|
||||
# NEW AST
|
||||
# def toFlatList(parser):
|
||||
# def decoratedParser(input):
|
||||
# result = parser(input)
|
||||
#
|
||||
# if result.result:
|
||||
# value = flattenList(result.node)
|
||||
# node = iterableNodeType()
|
||||
# for v in value:
|
||||
# node.append(v)
|
||||
# return ParseResult.OK(node)
|
||||
#
|
||||
# return ParseResult.FAIL()
|
||||
#
|
||||
# return decoratedParser
|
||||
#
|
||||
#
|
||||
# def flattenList(node, output=None):
|
||||
# if output is None:
|
||||
# output = []
|
||||
#
|
||||
# if type(node.value) != IgnoredNode:
|
||||
# output.append(node.value)
|
||||
#
|
||||
# if type(node.next) != IgnoredNode:
|
||||
# flattenList(node.next, output)
|
||||
#
|
||||
# return output
|
||||
Reference in New Issue
Block a user