From 4571e98b9f33777c9912d51ef3472f4d7c3bf5fa Mon Sep 17 00:00:00 2001 From: Gabriela Araujo Britto Date: Mon, 25 Oct 2021 14:36:16 -0700 Subject: [PATCH] rename diagnostic to status and remove snippets from public api --- src/compiler/checker.ts | 24 +++++++++---------- src/compiler/factory/emitNode.ts | 2 ++ src/compiler/types.ts | 8 +++++-- src/services/completions.ts | 2 +- .../reference/api/tsserverlibrary.d.ts | 23 ------------------ tests/baselines/reference/api/typescript.d.ts | 23 ------------------ 6 files changed, 21 insertions(+), 61 deletions(-) diff --git a/src/compiler/checker.ts b/src/compiler/checker.ts index d77af8013b7..994ea226144 100644 --- a/src/compiler/checker.ts +++ b/src/compiler/checker.ts @@ -729,7 +729,7 @@ namespace ts { isDeclarationVisible, isPropertyAccessible, getTypeOnlyAliasDeclaration, - getMemberOverrideModifierDiagnostic, + getMemberOverrideModifierStatus: getMemberOverrideModifierStatus, }; function getResolvedSignatureWorker(nodeIn: CallLikeExpression, candidatesOutArray: Signature[] | undefined, argumentCount: number | undefined, checkMode: CheckMode): Signature | undefined { @@ -38482,12 +38482,12 @@ namespace ts { member: ClassElement | ParameterPropertyDeclaration, memberIsParameterProperty: boolean, reportErrors = true, - ): MemberOverrideDiagnostic { + ): MemberOverrideStatus { const declaredProp = member.name && getSymbolAtLocation(member.name) || getSymbolAtLocation(member); if (!declaredProp) { - return MemberOverrideDiagnostic.Ok; + return MemberOverrideStatus.Ok; } return checkMemberForOverrideModifier( @@ -38527,7 +38527,7 @@ namespace ts { memberIsParameterProperty: boolean, memberName: string, errorNode?: Node, - ): MemberOverrideDiagnostic { + ): MemberOverrideStatus { const isJs = isInJSFile(node); const nodeInAmbientContext = !!(node.flags & NodeFlags.Ambient); if (baseWithThis && (memberHasOverrideModifier || compilerOptions.noImplicitOverride)) { @@ -38556,12 +38556,12 @@ namespace ts { Diagnostics.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0, baseClassName); } - return MemberOverrideDiagnostic.HasInvalidOverride; + return MemberOverrideStatus.HasInvalidOverride; } else if (prop && baseProp?.declarations && compilerOptions.noImplicitOverride && !nodeInAmbientContext) { const baseHasAbstract = some(baseProp.declarations, hasAbstractModifier); if (memberHasOverrideModifier) { - return MemberOverrideDiagnostic.Ok; + return MemberOverrideStatus.Ok; } if (!baseHasAbstract) { @@ -38575,13 +38575,13 @@ namespace ts { Diagnostics.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0; error(errorNode, diag, baseClassName); } - return MemberOverrideDiagnostic.NeedsOverride; + return MemberOverrideStatus.NeedsOverride; } else if (memberHasAbstractModifier && baseHasAbstract) { if (errorNode) { error(errorNode, Diagnostics.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0, baseClassName); } - return MemberOverrideDiagnostic.NeedsOverride; + return MemberOverrideStatus.NeedsOverride; } } } @@ -38595,10 +38595,10 @@ namespace ts { Diagnostics.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class, className); } - return MemberOverrideDiagnostic.HasInvalidOverride; + return MemberOverrideStatus.HasInvalidOverride; } - return MemberOverrideDiagnostic.Ok; + return MemberOverrideStatus.Ok; } function issueMemberSpecificError(node: ClassLikeDeclaration, typeWithThis: Type, baseWithThis: Type, broadDiag: DiagnosticMessage) { @@ -38651,9 +38651,9 @@ namespace ts { * @param member Member declaration node. * Note: `member` can be a synthetic node without a parent. */ - function getMemberOverrideModifierDiagnostic(node: ClassLikeDeclaration, member: ClassElement): MemberOverrideDiagnostic { + function getMemberOverrideModifierStatus(node: ClassLikeDeclaration, member: ClassElement): MemberOverrideStatus { if (!member.name) { - return MemberOverrideDiagnostic.Ok; + return MemberOverrideStatus.Ok; } const symbol = getSymbolOfNode(node); diff --git a/src/compiler/factory/emitNode.ts b/src/compiler/factory/emitNode.ts index fa4489ee7da..ebb7300efde 100644 --- a/src/compiler/factory/emitNode.ts +++ b/src/compiler/factory/emitNode.ts @@ -259,6 +259,7 @@ namespace ts { /** * Gets the SnippetElement of a node. */ + /* @internal */ export function getSnippetElement(node: Node): SnippetElement | undefined { return node.emitNode?.snippetElement; } @@ -266,6 +267,7 @@ namespace ts { /** * Sets the SnippetElement of a node. */ + /* @internal */ export function setSnippetElement(node: T, snippet: SnippetElement): T { const emitNode = getOrCreateEmitNode(node); emitNode.snippetElement = snippet; diff --git a/src/compiler/types.ts b/src/compiler/types.ts index c29cc3645bf..5a1be79b74a 100644 --- a/src/compiler/types.ts +++ b/src/compiler/types.ts @@ -4412,11 +4412,11 @@ namespace ts { /* @internal */ isDeclarationVisible(node: Declaration | AnyImportSyntax): boolean; /* @internal */ isPropertyAccessible(node: Node, isSuper: boolean, isWrite: boolean, containingType: Type, property: Symbol): boolean; /* @internal */ getTypeOnlyAliasDeclaration(symbol: Symbol): TypeOnlyAliasDeclaration | undefined; - /* @internal */ getMemberOverrideModifierDiagnostic(node: ClassLikeDeclaration, member: ClassElement): MemberOverrideDiagnostic; + /* @internal */ getMemberOverrideModifierStatus(node: ClassLikeDeclaration, member: ClassElement): MemberOverrideStatus; } /* @internal */ - export const enum MemberOverrideDiagnostic { + export const enum MemberOverrideStatus { Ok, NeedsOverride, HasInvalidOverride @@ -6812,19 +6812,23 @@ namespace ts { snippetElement?: SnippetElement; // Snippet element of the node } + /* @internal */ export type SnippetElement = TabStop | Placeholder; + /* @internal */ export interface TabStop { kind: SnippetKind.TabStop; order: number; } + /* @internal */ export interface Placeholder { kind: SnippetKind.Placeholder; order: number; } // Reference: https://code.visualstudio.com/docs/editor/userdefinedsnippets#_snippet-syntax + /* @internal */ export const enum SnippetKind { TabStop, // `$1`, `$2` Placeholder, // `${1:foo}` diff --git a/src/services/completions.ts b/src/services/completions.ts index ac51bef1607..62420d6edcd 100644 --- a/src/services/completions.ts +++ b/src/services/completions.ts @@ -901,7 +901,7 @@ namespace ts.Completions { } } if (isClassElement(node) - && checker.getMemberOverrideModifierDiagnostic(classLikeDeclaration, node) === MemberOverrideDiagnostic.NeedsOverride) { + && checker.getMemberOverrideModifierStatus(classLikeDeclaration, node) === MemberOverrideStatus.NeedsOverride) { requiredModifiers |= ModifierFlags.Override; } diff --git a/tests/baselines/reference/api/tsserverlibrary.d.ts b/tests/baselines/reference/api/tsserverlibrary.d.ts index 53ea9d1e628..349e025e58e 100644 --- a/tests/baselines/reference/api/tsserverlibrary.d.ts +++ b/tests/baselines/reference/api/tsserverlibrary.d.ts @@ -3229,21 +3229,6 @@ declare namespace ts { text: string; skipTrivia?: (pos: number) => number; } - export type SnippetElement = TabStop | Placeholder; - export interface TabStop { - kind: SnippetKind.TabStop; - order: number; - } - export interface Placeholder { - kind: SnippetKind.Placeholder; - order: number; - } - export enum SnippetKind { - TabStop = 0, - Placeholder = 1, - Choice = 2, - Variable = 3 - } export enum EmitFlags { None = 0, SingleLine = 1, @@ -4536,14 +4521,6 @@ declare namespace ts { * Moves matching emit helpers from a source node to a target node. */ function moveEmitHelpers(source: Node, target: Node, predicate: (helper: EmitHelper) => boolean): void; - /** - * Gets the SnippetElement of a node. - */ - function getSnippetElement(node: Node): SnippetElement | undefined; - /** - * Sets the SnippetElement of a node. - */ - function setSnippetElement(node: T, snippet: SnippetElement): T; } declare namespace ts { function isNumericLiteral(node: Node): node is NumericLiteral; diff --git a/tests/baselines/reference/api/typescript.d.ts b/tests/baselines/reference/api/typescript.d.ts index a90a3086f6d..2a2c398553c 100644 --- a/tests/baselines/reference/api/typescript.d.ts +++ b/tests/baselines/reference/api/typescript.d.ts @@ -3229,21 +3229,6 @@ declare namespace ts { text: string; skipTrivia?: (pos: number) => number; } - export type SnippetElement = TabStop | Placeholder; - export interface TabStop { - kind: SnippetKind.TabStop; - order: number; - } - export interface Placeholder { - kind: SnippetKind.Placeholder; - order: number; - } - export enum SnippetKind { - TabStop = 0, - Placeholder = 1, - Choice = 2, - Variable = 3 - } export enum EmitFlags { None = 0, SingleLine = 1, @@ -4536,14 +4521,6 @@ declare namespace ts { * Moves matching emit helpers from a source node to a target node. */ function moveEmitHelpers(source: Node, target: Node, predicate: (helper: EmitHelper) => boolean): void; - /** - * Gets the SnippetElement of a node. - */ - function getSnippetElement(node: Node): SnippetElement | undefined; - /** - * Sets the SnippetElement of a node. - */ - function setSnippetElement(node: T, snippet: SnippetElement): T; } declare namespace ts { function isNumericLiteral(node: Node): node is NumericLiteral;