From 2d4cec43f5b486305661b90a37cd63aeb6ae5363 Mon Sep 17 00:00:00 2001 From: Mohamed Hegazy Date: Mon, 18 Aug 2014 12:37:12 -0700 Subject: [PATCH] Updates after merge from master --- src/compiler/scanner.ts | 12 ++++++++++++ src/services/services.ts | 10 +++++----- 2 files changed, 17 insertions(+), 5 deletions(-) diff --git a/src/compiler/scanner.ts b/src/compiler/scanner.ts index 2de92ed02cc..8be954a6079 100644 --- a/src/compiler/scanner.ts +++ b/src/compiler/scanner.ts @@ -428,6 +428,18 @@ module ts { return getCommentRanges(text, pos, /*trailing*/ true); } + export function isIdentifierStart(ch: number, languageVersion: ScriptTarget): boolean { + return ch >= CharacterCodes.A && ch <= CharacterCodes.Z || ch >= CharacterCodes.a && ch <= CharacterCodes.z || + ch === CharacterCodes.$ || ch === CharacterCodes._ || + ch > CharacterCodes.maxAsciiCharacter && isUnicodeIdentifierStart(ch, languageVersion); + } + + export function isIdentifierPart(ch: number, languageVersion: ScriptTarget): boolean { + return ch >= CharacterCodes.A && ch <= CharacterCodes.Z || ch >= CharacterCodes.a && ch <= CharacterCodes.z || + ch >= CharacterCodes._0 && ch <= CharacterCodes._9 || ch === CharacterCodes.$ || ch === CharacterCodes._ || + ch > CharacterCodes.maxAsciiCharacter && isUnicodeIdentifierPart(ch, languageVersion); + } + export function createScanner(languageVersion: ScriptTarget, text?: string, onError?: ErrorCallback, onComment?: CommentCallback): Scanner { var pos: number; // Current position (end position of text of current token) var len: number; // Length of text diff --git a/src/services/services.ts b/src/services/services.ts index 10a4c7491b1..9d52d93ad0c 100644 --- a/src/services/services.ts +++ b/src/services/services.ts @@ -2365,7 +2365,7 @@ module ts { var result = [symbol]; // If the symbol is an instantiation from a another symbol (e.g. widened symbol) , add the root the list - var rootSymbol = typeChecker.getRootSymbol(symbol); + var rootSymbol = typeInfoResolver.getRootSymbol(symbol); if (rootSymbol && rootSymbol !== symbol) { result.push(rootSymbol); } @@ -2403,7 +2403,7 @@ module ts { function getPropertySymbolFromTypeReference(typeReference: TypeReferenceNode) { if (typeReference) { // TODO: move to getTypeOfNode instead - var typeReferenceSymbol = typeChecker.getSymbolInfo(typeReference.typeName); + var typeReferenceSymbol = typeInfoResolver.getSymbolInfo(typeReference.typeName); if (typeReferenceSymbol) { var propertySymbol = typeReferenceSymbol.members[propertyName]; if (propertySymbol) result.push(typeReferenceSymbol.members[propertyName]); @@ -2417,7 +2417,7 @@ module ts { function isRelatableToSearchSet(searchSymbols: Symbol[], referenceSymbol: Symbol, referenceLocation: Node): boolean { // Unwrap symbols to get to the root (e.g. triansient symbols as a result of widenning) - var referenceSymbolTarget = typeChecker.getRootSymbol(referenceSymbol); + var referenceSymbolTarget = typeInfoResolver.getRootSymbol(referenceSymbol); // if it is in the list, then we are done if (searchSymbols.indexOf(referenceSymbolTarget) >= 0) { @@ -2448,9 +2448,9 @@ module ts { function getPropertySymbolFromContextualType(node: Node): Symbol { if (isNameOfPropertyAssignment(node)) { var objectLiteral = node.parent.parent; - var contextualType = typeChecker.getContextualType(objectLiteral); + var contextualType = typeInfoResolver.getContextualType(objectLiteral); if (contextualType) { - return typeChecker.getPropertyOfType(contextualType, (node).text); + return typeInfoResolver.getPropertyOfType(contextualType, (node).text); } } return undefined;