Merge pull request #1047 from Microsoft/parentProperty

Make ISyntaxElement.parent non-optional
This commit is contained in:
CyrusNajmabadi 2014-11-03 20:08:54 -08:00
commit b49762d5e4
3 changed files with 7 additions and 1 deletions

View File

@ -252,6 +252,7 @@ module TypeScript.Scanner {
class FixedWidthTokenWithNoTrivia implements ISyntaxToken {
public _primaryExpressionBrand: any; public _memberExpressionBrand: any; public _leftHandSideExpressionBrand: any; public _postfixExpressionBrand: any; public _unaryExpressionBrand: any; public _expressionBrand: any; public _typeBrand: any; public _syntaxNodeOrTokenBrand: any;
public parent: ISyntaxElement;
constructor(private _packedData: number) {
}
@ -286,8 +287,10 @@ module TypeScript.Scanner {
class LargeScannerToken implements ISyntaxToken {
public _primaryExpressionBrand: any; public _memberExpressionBrand: any; public _leftHandSideExpressionBrand: any; public _postfixExpressionBrand: any; public _unaryExpressionBrand: any; public _expressionBrand: any; public _typeBrand: any; public _syntaxNodeOrTokenBrand: any;
public parent: ISyntaxElement;
private cachedText: string;
constructor(private _packedFullStartAndInfo: number, private _packedFullWidthAndKind: number, cachedText: string) {
if (cachedText !== undefined) {
this.cachedText = cachedText;

View File

@ -367,7 +367,7 @@ module TypeScript {
export interface ISyntaxElement {
kind(): SyntaxKind;
parent?: ISyntaxElement;
parent: ISyntaxElement;
}
export interface ISyntaxNode extends ISyntaxNodeOrToken {

View File

@ -305,6 +305,7 @@ module TypeScript.Syntax {
class EmptyToken implements ISyntaxToken {
public _primaryExpressionBrand: any; public _memberExpressionBrand: any; public _leftHandSideExpressionBrand: any; public _postfixExpressionBrand: any; public _unaryExpressionBrand: any; public _expressionBrand: any; public _typeBrand: any; public _syntaxNodeOrTokenBrand: any;
public parent: ISyntaxElement;
constructor(private _kind: SyntaxKind) {
}
@ -428,6 +429,7 @@ module TypeScript.Syntax {
private _trailingTrivia: ISyntaxTriviaList;
public _primaryExpressionBrand: any; public _memberExpressionBrand: any; public _leftHandSideExpressionBrand: any; public _postfixExpressionBrand: any; public _unaryExpressionBrand: any; public _expressionBrand: any; public _typeBrand: any; public _syntaxNodeOrTokenBrand: any;
public parent: ISyntaxElement;
constructor(fullStart: number,
kind: SyntaxKind,
@ -497,6 +499,7 @@ module TypeScript.Syntax {
class ConvertedKeywordToken implements ISyntaxToken {
public _primaryExpressionBrand: any; public _memberExpressionBrand: any; public _leftHandSideExpressionBrand: any; public _postfixExpressionBrand: any; public _unaryExpressionBrand: any; public _expressionBrand: any; public _typeBrand: any; public _syntaxNodeOrTokenBrand: any;
public parent: ISyntaxElement;
constructor(private underlyingToken: ISyntaxToken) {
}