MSFieldParse.h
Classes
- MSFieldParse -- Class to hold values from field grammar parser (full description)
Interface
- Public Members
- MSFieldParse ()
- MSFieldParse (const MeasurementSet* ms)
- const TableExprNode *selectFieldIds(const Vector<Int>& fieldIds)
- static const TableExprNode* node()
Prerequisite
Etymology
MSFieldParse is the class used to parse a field command.
Synopsis
MSFieldParse is used by the parser of field sub-expression statements.
The parser is written in Bison and Flex in files MSFieldGram.y and .l.
The statements in there use the routines in this file to act
upon a reduced rule.
Since multiple tables can be given (with a shorthand), the table
names are stored in a list. The variable names can be qualified
by the table name and will be looked up in the appropriate table.
The class MSFieldParse only contains information about a table
used in the table command. Global variables (like a list and a vector)
are used in MSFieldParse.cc to hold further information.
Global functions are used to operate on the information.
The main function is the global function msFieldCommand.
It executes the given STaQL command and returns the resulting ms.
This is, in fact, the only function to be used by a user.
Motivation
It is necessary to be able to give a ms command in ASCII.
This can be used in a CLI or in the table browser to get a subset
of a table or to sort a table.
Member Description
Default constructor
Associate the ms and the shorthand.
const TableExprNode *selectFieldOrSource(const String& fieldName);
Get table expression node object.