3
私の目標は、特定のTypeScript ASTノードの位置(開始点と終了点)を発行(JavaScript)ファイルで取得することです。TypeScriptコンパイラapi:特定のASTノードの生成コード内の位置を取得
例えば、このコードを取る:
const program = ts.createProgram(tsconfig.fileNames, tsconfig.options);
const aNode = program.getSourceFiles()[0].getChildAt(1);
const emittedFiles = [];
program.emit(/*targetSourceFile */undefined, /*writeFile*/ (fileName, content) => emittedFiles.push({ fileName, content }));
にはどうすればaNode
で表されたコードの位置を得ることができますか?
私が今これを試している方法は、ソースマップファイルをキャプチャして、https://npmjs.org/package/source-mapを使用して場所をリバースエンジニアリングすることです。しかし、ソースマップファイルは私に位置の推定を与えるだけです。
送信元マップファイルを使用して正確な位置をリバースエンジニアリングする方法や、送信フェーズでノードがJavaScript出力に書き込まれるため、正確な位置を傍受する方法はありますか?