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.
|
|
'use strict';
Object.defineProperty(exports, "__esModule", { value: true }); exports.default = extractValueFromUpdateExpression; /** * Extractor function for an UpdateExpression type value node. * An update expression is an expression with an update operator. * For example, foo++ will evaluate to foo + 1. * * @param - value - AST Value object with type `UpdateExpression` * @returns - The extracted value converted to correct type. */ function extractValueFromUpdateExpression(value) { // eslint-disable-next-line global-require
var getValue = require('./index.js').default; var operator = value.operator, argument = value.argument, prefix = value.prefix;
var val = getValue(argument);
switch (operator) { case '++': return prefix ? ++val : val++; // eslint-disable-line no-plusplus
case '--': return prefix ? --val : val--; // eslint-disable-line no-plusplus
default: return undefined; } }
|