Sha256: d12980cf1ced214a3aaee8179a1e88727dcd9efa81cf1caac2c3dfc9f2e6ce25
Contents?: true
Size: 788 Bytes
Versions: 9
Compression:
Stored size: 788 Bytes
Contents
/** * 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. */ export default function extractValueFromUpdateExpression(value) { // eslint-disable-next-line global-require const getValue = require('.').default; const { operator, argument, prefix } = value; let 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; } }
Version data entries
9 entries across 9 versions & 2 rubygems