pub fn fields(ast: &Ast) -> Vec<&str>
Extract the list of distinct field names referenced in a DSL tree.