You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Björn f184cd7e2a adding 4 years ago
..
dist adding 4 years ago
.eslintrc.yml adding 4 years ago
CHANGELOG.md adding 4 years ago
CONTRIBUTING.md adding 4 years ago
LICENSE adding 4 years ago
README.md adding 4 years ago
bower.json adding 4 years ago
component.json adding 4 years ago
gulpfile.js adding 4 years ago
karma.conf.ci.js adding 4 years ago
karma.conf.js adding 4 years ago
package.json adding 4 years ago
stackframe-tests.ts adding 4 years ago
stackframe.d.ts adding 4 years ago
stackframe.js adding 4 years ago

README.md

stackframe

JS Object representation of a stack frame

Build Status Coverage Status GitHub license

Underlies functionality of other modules within stacktrace.js.

Written to closely resemble StackFrame representations in Gecko and V8

Usage

// 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'

Browser Support

Sauce Test Status

Installation

npm install stackframe
bower install stackframe
https://raw.githubusercontent.com/stacktracejs/stackframe/master/dist/stackframe.min.js