private static bool ParseParameterizedDataType(
IList<TSqlParserToken> tokens,
ref int nextToken,
ref WDataTypeReference result,
ref int farestError)
{
var firstToken = nextToken;
var currentToken = nextToken;
WSchemaObjectName varName = null;
if (!ParseSchemaObjectName(tokens, ref currentToken, ref varName, ref farestError))
return false;
List<Literal> parameters = null;
ParseLiteralList(tokens, ref currentToken, ref parameters, ref farestError);
var dataTypeReference = new WParameterizedDataTypeReference
{
Name = varName,
Parameters = parameters,
FirstTokenIndex = firstToken,
LastTokenIndex = currentToken - 1,
};
nextToken = currentToken;
result = dataTypeReference;
return true;
}