textModelBracketPairs.js 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. /*---------------------------------------------------------------------------------------------
  2. * Copyright (c) Microsoft Corporation. All rights reserved.
  3. * Licensed under the MIT License. See License.txt in the project root for license information.
  4. *--------------------------------------------------------------------------------------------*/
  5. export class BracketInfo {
  6. constructor(range,
  7. /** 0-based level */
  8. nestingLevel, nestingLevelOfEqualBracketType, isInvalid) {
  9. this.range = range;
  10. this.nestingLevel = nestingLevel;
  11. this.nestingLevelOfEqualBracketType = nestingLevelOfEqualBracketType;
  12. this.isInvalid = isInvalid;
  13. }
  14. }
  15. export class BracketPairInfo {
  16. constructor(range, openingBracketRange, closingBracketRange,
  17. /** 0-based */
  18. nestingLevel, nestingLevelOfEqualBracketType, bracketPairNode) {
  19. this.range = range;
  20. this.openingBracketRange = openingBracketRange;
  21. this.closingBracketRange = closingBracketRange;
  22. this.nestingLevel = nestingLevel;
  23. this.nestingLevelOfEqualBracketType = nestingLevelOfEqualBracketType;
  24. this.bracketPairNode = bracketPairNode;
  25. }
  26. get openingBracketInfo() {
  27. return this.bracketPairNode.openingBracket.bracketInfo;
  28. }
  29. }
  30. export class BracketPairWithMinIndentationInfo extends BracketPairInfo {
  31. constructor(range, openingBracketRange, closingBracketRange,
  32. /**
  33. * 0-based
  34. */
  35. nestingLevel, nestingLevelOfEqualBracketType, bracketPairNode,
  36. /**
  37. * -1 if not requested, otherwise the size of the minimum indentation in the bracket pair in terms of visible columns.
  38. */
  39. minVisibleColumnIndentation) {
  40. super(range, openingBracketRange, closingBracketRange, nestingLevel, nestingLevelOfEqualBracketType, bracketPairNode);
  41. this.minVisibleColumnIndentation = minVisibleColumnIndentation;
  42. }
  43. }