public ResolvedSubStatementTableInfo (string tableAlias, SqlStatement sqlStatement)
{
ArgumentUtility.CheckNotNullOrEmpty ("tableAlias", tableAlias);
ArgumentUtility.CheckNotNull ("sqlStatement", sqlStatement);
_sqlStatement = sqlStatement;
_tableAlias = tableAlias;
var streamedSequenceInfo = sqlStatement.DataInfo as StreamedSequenceInfo;
if (streamedSequenceInfo == null)
throw new ArgumentException ("For a statement to be used as a table, it must return a sequence of items.", "sqlStatement");
_itemType = streamedSequenceInfo.ResultItemType;
}