func (n *ArraySubscriptExpr) Address() Address {
	return n.Addr
}
Address returns the numeric address of the node. See the documentation for
the Address type for more information.
package ast
type ArraySubscriptExpr struct {
	Addr       Address
	Pos        Position
	Type       string
	Type2      string
	IsLvalue   bool
	ChildNodes []Node
}
func parseArraySubscriptExpr(line string) *ArraySubscriptExpr {
	groups := groupsFromRegex(
		`<(?P<position>.*)> '(?P<type>.*?)'(:'(?P<type2>.*?)')?
		(?P<lvalue> lvalue)?`,
		line,
	)
	return &ArraySubscriptExpr{
		Addr:       ParseAddress(groups["address"]),
		Pos:        NewPositionFromString(groups["position"]),
		Type:       groups["type"],
		Type2:      groups["type2"],
		IsLvalue:   len(groups["lvalue"]) > 0,
		ChildNodes: []Node{},
	}
}
func (n *ArraySubscriptExpr) AddChild(node Node) {
	n.ChildNodes = append(n.ChildNodes, node)
}