cloudspannerecosystem/memefish

move `Node` and types implements `Node` to `ast` package

makenowjust opened this issue · 0 comments

What

Node and types implements Node in parser moves to a new ast package.

Why

Currently parser package contains many many types.
This fact makes hard to understand how to use parser package by seeing godoc.org.

Another point of view, wc -l pkg/parser/{lexer,parser}.go shows about 3200, and wc -l pkg/parser/{ast,position,sql}.go shows about 3000. So, AST related part is too large to contain parser package.