33 lines
669 B
JavaScript
33 lines
669 B
JavaScript
/**
|
|
* @typedef {Object} PointLike
|
|
* @property {number} [line]
|
|
* @property {number} [column]
|
|
* @property {number} [offset]
|
|
*
|
|
* @typedef {Object} PositionLike
|
|
* @property {PointLike} [start]
|
|
* @property {PointLike} [end]
|
|
*
|
|
* @typedef {Object} NodeLike
|
|
* @property {PositionLike} [position]
|
|
*/
|
|
|
|
/**
|
|
* Check if `node` is *generated*.
|
|
*
|
|
* @param {NodeLike} [node]
|
|
* @returns {boolean}
|
|
*/
|
|
export function generated(node) {
|
|
return (
|
|
!node ||
|
|
!node.position ||
|
|
!node.position.start ||
|
|
!node.position.start.line ||
|
|
!node.position.start.column ||
|
|
!node.position.end ||
|
|
!node.position.end.line ||
|
|
!node.position.end.column
|
|
)
|
|
}
|