44 lines
1.9 KiB
JavaScript
44 lines
1.9 KiB
JavaScript
/*---------------------------------------------------------------------------------------------
|
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
* Licensed under the MIT License. See License.txt in the project root for license information.
|
|
*--------------------------------------------------------------------------------------------*/
|
|
export class BracketInfo {
|
|
constructor(range,
|
|
/** 0-based level */
|
|
nestingLevel, nestingLevelOfEqualBracketType, isInvalid) {
|
|
this.range = range;
|
|
this.nestingLevel = nestingLevel;
|
|
this.nestingLevelOfEqualBracketType = nestingLevelOfEqualBracketType;
|
|
this.isInvalid = isInvalid;
|
|
}
|
|
}
|
|
export class BracketPairInfo {
|
|
constructor(range, openingBracketRange, closingBracketRange,
|
|
/** 0-based */
|
|
nestingLevel, nestingLevelOfEqualBracketType, bracketPairNode) {
|
|
this.range = range;
|
|
this.openingBracketRange = openingBracketRange;
|
|
this.closingBracketRange = closingBracketRange;
|
|
this.nestingLevel = nestingLevel;
|
|
this.nestingLevelOfEqualBracketType = nestingLevelOfEqualBracketType;
|
|
this.bracketPairNode = bracketPairNode;
|
|
}
|
|
get openingBracketInfo() {
|
|
return this.bracketPairNode.openingBracket.bracketInfo;
|
|
}
|
|
}
|
|
export class BracketPairWithMinIndentationInfo extends BracketPairInfo {
|
|
constructor(range, openingBracketRange, closingBracketRange,
|
|
/**
|
|
* 0-based
|
|
*/
|
|
nestingLevel, nestingLevelOfEqualBracketType, bracketPairNode,
|
|
/**
|
|
* -1 if not requested, otherwise the size of the minimum indentation in the bracket pair in terms of visible columns.
|
|
*/
|
|
minVisibleColumnIndentation) {
|
|
super(range, openingBracketRange, closingBracketRange, nestingLevel, nestingLevelOfEqualBracketType, bracketPairNode);
|
|
this.minVisibleColumnIndentation = minVisibleColumnIndentation;
|
|
}
|
|
}
|