Parser: save `substring` and `parentRule`
Parser: build a tree