message: Remove TextDocumentLike.eol
  Use # prefix
diff: @@ -2,10 +2,8 @@ import * as vscode from 'vscode'
  import * as fs from 'fs'
  export class TextDocumentLike {
  - private readonly _lines: string[]
  - readonly lineCount: number
  - readonly eol: vscode.EndOfLine
  - private readonly _eol: string
  + readonly #lines: string[]
  + readonly #eol: string
  static load(filePath: string): TextDocumentLike | vscode.TextDocument {
  const uri = vscode.Uri.file(filePath)
  @@ -23,28 +21,27 @@ export class TextDocumentLike {
  constructor(s: string) {
  if (s.match(/\r\n/)) {
  - this.eol = vscode.EndOfLine.CRLF
  - this._eol = '\r\n'
  + this.#eol = '\r\n'
  } else if (s.match(/\n/)) {
  - this.eol = vscode.EndOfLine.LF
  - this._eol = '\n'
  + this.#eol = '\n'
  } else {
  const editor = vscode.window.activeTextEditor
  if (editor === undefined || editor.document.eol === vscode.EndOfLine.LF) {
  - this.eol = vscode.EndOfLine.LF
  - this._eol = '\n'
  + this.#eol = '\n'
  } else {
  - this.eol = vscode.EndOfLine.CRLF
  - this._eol = '\r\n'
  + this.#eol = '\r\n'
  }
  }
  - this._lines = s.split(this._eol)
  - this.lineCount = this._lines.length
  + this.#lines = s.split(this.#eol)
  + }
  +
  + get lineCount(): number {
  + return this.#lines.length
  }
  getText(range?: vscode.Range): string {
  if (range === undefined) {
  - return this._lines.join(this._eol)
  + return this.#lines.join(this.#eol)
  }
  let ret = ''
  let line: string | undefined
  @@ -54,15 +51,15 @@ export class TextDocumentLike {
  return ''
  }
  if (startLineNum === endLineNum) {
  - line = this._lines[startLineNum]
  + line = this.#lines[startLineNum]
  return line.slice(range.start.character, range.end.character)
  }
  - line = this._lines[startLineNum]
  + line = this.#lines[startLineNum]
  ret += line.slice(range.start.character)
  for (let i = startLineNum + 1; i < endLineNum; i++) {
  - ret += this._eol + this._lines[i]
  + ret += this.#eol + this.#lines[i]
  }
  - ret += this._eol + this._lines[endLineNum].slice(0, range.end.character)
  + ret += this.#eol + this.#lines[endLineNum].slice(0, range.end.character)
  return ret
  }
  @@ -70,7 +67,7 @@ export class TextDocumentLike {
  if (position.line > this.lineCount) {
  return undefined
  }
  - const line = this._lines[position.line]
  + const line = this.#lines[position.line]
  for (let i = position.character; i >= 0; i--) {
  const tmp = line.slice(i)
  const m = tmp.match(regex)
  @@ -85,9 +82,9 @@ export class TextDocumentLike {
  lineAt(position: vscode.Position): TextLineLike
  lineAt(lineNum: number | vscode.Position) {
  if (typeof lineNum === 'number') {
  - return new TextLineLike(this._lines[lineNum])
  + return new TextLineLike(this.#lines[lineNum])
  } else {
  - return new TextLineLike(this._lines[lineNum.line])
  + return new TextLineLike(this.#lines[lineNum.line])
  }
  }
  