internal static ITypeName ScanType(string typename, bool ignoreErrors) { Token token = null; typename = typename.Trim(); if (typename.Length != 0) { Parser parser = new Parser(); Tokenizer tokenizer = parser._tokenizer; tokenizer.Initialize(null, typename, null); ITypeName typeName = parser.TypeNameRule(out token); SemanticChecks.CheckArrayTypeNameDepth(typeName, PositionUtilities.EmptyExtent, parser); if (!ignoreErrors && parser.ErrorList.Any<ParseError>()) { typeName = null; } return typeName; } else { return null; } }
internal static ITypeName ScanType(string typename, bool ignoreErrors) { typename = typename.Trim(); if (typename.Length == 0) { return null; } var parser = new Parser(); var tokenizer = parser._tokenizer; tokenizer.Initialize(null, typename, null); Token unused; var result = parser.TypeNameRule(allowAssemblyQualifiedNames: true, firstTypeNameToken: out unused); SemanticChecks.CheckArrayTypeNameDepth(result, PositionUtilities.EmptyExtent, parser); if (!ignoreErrors && parser.ErrorList.Count > 0) { result = null; } return result; }