
AMDG HT4N - wrote:
I have a question regarding unexpected leading spaces got injected into a parse tree node.
Here is my grammar:
Text = leaf_node_d[+digit_p] >> root_node_d[ch_p('=')] >> leaf_node_d[+digit_p];
If I parse "5=5", as expected no extra leading spaces added to the resulting tree nodes.
If I parse "5= 5" (read:5 followed by = followed by 4 spaces and followed by 5), given my grammar definition of leaf_node_d[+digit_p], I am expecting the parse tree node value should not contain any leading spaces. Yet, I see that the extra 4 spaces is stored in the corresponding parse tree node as shown below.
<snip> ==> <value> 5</value>
I am wondering if this is a by design or unexpected behavior. If it is a by design behavior, is there a way to trim leading/trailing spaces.
Perhaps you should use lexeme_d[leaf_node_d[+digit_p]]? In Christ, Steven Watanabe