- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
作为问题 how-to-determine-source-information-of-callback-in-v8 的后续行动,我有以下问题。
如果我查看函数的属性,我会发现它有名称、长度等。是否可以通过破解“函数”对象的构造函数来自动向所有函数添加属性?如果是这样,应该如何做?我想添加一个名为“source_location”的属性
function foo() {
}
console.log(foo.name); //works out of the box
console.log(foo.source_location); //can I make this work?
最佳答案
您可以使用 v8 的调试器对象。
来源
// test.js
function bar() {
}
function foo() {
}
foo.source_location = debug.Debug.findFunctionSourceLocation(foo);
console.log(foo.name);
console.log(foo.source_location);
console.log(foo.source_location.script.name);
执行
node --expose-debug-as=debug test.js
输出
foo
{ script: {}, // script object
position: 106,
line: 5,
column: 12,
start: 94,
end: 110 }
/home/skomski/test.js
引用文献
http://code.google.com/p/v8/source/browse/trunk/src/debug-debugger.js#586
关于javascript - 将 sourceLocation 属性添加到函数中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8910478/
我正在尝试使用 Clang Lexer 库来查找标记的位置(特别是命名空间声明的左大括号)。我的想法(因为 NamespaceDecl 没有它的方法)是在命名空间声明开始后找到第一个左大括号的位置。然
作为问题 how-to-determine-source-information-of-callback-in-v8 的后续行动,我有以下问题。 如果我查看函数的属性,我会发现它有名称、长度等。是否可
我试图确定一个类型是在文件中定义还是包含在另一个文件中(无论是系统头文件还是其他文件),但我似乎无法找到一种简单的方法来找到类型的位置一个变量。我能得到的最接近的方法是使用 TypeLoc 的方法,但
libclang C API 具有用于此目的的以下函数: CXSourceLocation clang_getLocation( CXTranslationUnit 你, CXFile 文件, 无符号
我是一名优秀的程序员,十分优秀!