Description
Acknowledgement
- I acknowledge that issues using this template may be closed without further explanation at the maintainer's discretion.
Comment
Coming over from typescript-eslint/typescript-eslint#8227 -> https://discord.com/channels/508357248330760243/640177429775777792/1194002057858916483: it looks like ts.Node
objects have both a pos: number
property and a getFullStart(): number
method that directly returns this.pos
:
TypeScript/src/services/services.ts
Lines 564 to 566 in 02f9ddf
Doing some quick Find all references from the interfaces' definitions in VS Code:
Node
'sgetFullStart()
has 25 resultsReadonlyTextRange
sreadonly pos
has 407 results
I looked through the GitHub repo and code history but couldn't find anything justifying why both exist. My hunch is maybe that #9529 which added getFullStart()
predates TS 2.0's readonly
(TS 2.0 release notes > readonly)?
Given that getFullStart()
incurs an extra function call, is there any reason beyond backwards compatibility to keep it around? If not, would the team be open to marking it as @deprecated
in JSDoc to reduce ambiguity?