AST class definitions.