forked from glayzzle/php-parser
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathnode.js
More file actions
32 lines (29 loc) · 714 Bytes
/
node.js
File metadata and controls
32 lines (29 loc) · 714 Bytes
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
/*!
* Copyright (C) 2017 Glayzzle (BSD3 License)
* @authors https://github.com/glayzzle/php-parser/graphs/contributors
* @url http://glayzzle.com
*/
/**
* A generic AST node
* @constructor Node
* @property {Location|null} loc
* @property {String} kind
*/
var Node = function Node(kind, location) {
this.kind = kind;
if(location) {
this.loc = location;
}
};
/**
* Helper for extending the Node class
* @param {Function} constructor
* @return {Function}
*/
Node.extends = function(constructor) {
constructor.prototype = Object.create(this.prototype);
constructor.extends = this.extends;
constructor.prototype.constructor = constructor;
return constructor;
};
module.exports = Node;