Fixed #29: Parsers: Implement parsing memoization
Fixed #77 : Parser: ShortTermMemoryParser should be called separately Fixed #78 : Remove VariableNode usage Fixed #79 : ConceptManager: Implement compile caching Fixed #80 : SheerkaExecute : parsers_key is not correctly computed Fixed #81 : ValidateConceptEvaluator : Validate concept's where and pre clauses right after the parsing Fixed #82 : SheerkaIsAManager: isa() failed when the set as a body Fixed #83 : ValidateConceptEvaluator : Support BNF and SYA Concepts Fixed #84 : ExpressionParser: Implement the parser as a standard parser Fixed #85 : Services: Give order to services Fixed #86 : cannot manage smart_get_attr(the short, color)
This commit is contained in:
@@ -380,9 +380,11 @@ class SequenceNodeParser(BaseNodeParser):
|
||||
for node in parser_helper.sequence:
|
||||
# if isinstance(node, ConceptNode):
|
||||
# if len(node.concept.get_metadata().variables) > 0:
|
||||
# node.concept.get_metadata().is_evaluated = True # Do not try to evaluate those concepts
|
||||
# node.concept.get_hints().is_evaluated = True # Do not try to evaluate those concepts
|
||||
node.tokens = self.parser_input.tokens[node.start:node.end + 1]
|
||||
node.fix_source()
|
||||
if isinstance(node, ConceptNode):
|
||||
node.concept.get_hints().use_copy = True
|
||||
|
||||
parser_helper_hash_code = compute_hash_code(parser_helper)
|
||||
if parser_helper_hash_code in already_seen:
|
||||
@@ -426,7 +428,7 @@ class SequenceNodeParser(BaseNodeParser):
|
||||
self.sheerka.new(
|
||||
BuiltinConcepts.PARSER_RESULT,
|
||||
parser=self,
|
||||
source=parser_input,
|
||||
source=parser_input.as_text(),
|
||||
body=parser_helper.sequence,
|
||||
try_parsed=parser_helper.sequence)))
|
||||
|
||||
|
||||
Reference in New Issue
Block a user