-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathREADME.html
More file actions
59 lines (50 loc) · 2.92 KB
/
README.html
File metadata and controls
59 lines (50 loc) · 2.92 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
<h1 id="stackframe-">stackframe </h1>
<h2 id="js-object-representation-of-a-stack-frame">JS Object representation of a stack frame</h2>
<p><a href="https://travis-ci.org/stacktracejs/stackframe"><img src="https://travis-ci.org/stacktracejs/stackframe.svg?branch=master" alt="Build Status"></a> <a href="https://coveralls.io/r/stacktracejs/stackframe?branch=master"><img src="https://img.shields.io/coveralls/stacktracejs/stackframe.svg" alt="Coverage Status"></a> <a href="https://opensource.org/licenses/MITx"><img src="https://img.shields.io/github/license/stacktracejs/stackframe.svg" alt="GitHub license"></a></p>
<p>Underlies functionality of other modules within <a href="https://www.stacktracejs.com">stacktrace.js</a>.</p>
<p>Written to closely resemble StackFrame representations in <a href="http://mxr.mozilla.org/mozilla-central/source/xpcom/base/nsIException.idl#14">Gecko</a> and <a href="https://github.com/v8/v8/wiki/Stack%20Trace%20API">V8</a></p>
<h2 id="usage">Usage</h2>
<pre><code class="lang-js">// Create StackFrame and set properties
var stackFrame = new StackFrame({
functionName: 'funName',
args: ['args'],
fileName: 'http://localhost:3000/file.js',
lineNumber: 1,
columnNumber: 3288,
isEval: true,
isNative: false,
source: 'ORIGINAL_STACK_LINE'
});
stackFrame.functionName // => "funName"
stackFrame.setFunctionName('newName')
stackFrame.getFunctionName() // => "newName"
stackFrame.args // => ["args"]
stackFrame.setArgs([])
stackFrame.getArgs() // => []
stackFrame.fileName // => 'http://localhost:3000/file.min.js'
stackFrame.setFileName('http://localhost:3000/file.js')
stackFrame.getFileName() // => 'http://localhost:3000/file.js'
stackFrame.lineNumber // => 1
stackFrame.setLineNumber(325)
stackFrame.getLineNumber() // => 325
stackFrame.columnNumber // => 3288
stackFrame.setColumnNumber(20)
stackFrame.getColumnNumber() // => 20
stackFrame.source // => 'ORIGINAL_STACK_LINE'
stackFrame.setSource('NEW_SOURCE')
stackFrame.getSource() // => 'NEW_SOURCE'
stackFrame.isEval // => true
stackFrame.setIsEval(false)
stackFrame.getIsEval() // => false
stackFrame.isNative // => false
stackFrame.setIsNative(true)
stackFrame.getIsNative() // => true
stackFrame.toString() // => 'funName(args)@http://localhost:3000/file.js:325:20'
</code></pre>
<h2 id="browser-support">Browser Support</h2>
<p><a href="https://saucelabs.com/u/stacktracejs"><img src="https://saucelabs.com/browser-matrix/stacktracejs.svg" alt="Sauce Test Status"></a></p>
<h2 id="installation">Installation</h2>
<pre><code>npm install stackframe
bower install stackframe
https://raw.githubusercontent.com/stacktracejs/stackframe/master/dist/stackframe.min.js
</code></pre>