UNPKG

decaffeinate-parser

Version:

A better AST for CoffeeScript, inspired by CoffeeScriptRedux.

18 lines (17 loc) 867 B
import { AwaitReturn as CoffeeAwaitReturn, YieldReturn as CoffeeYieldReturn } from 'decaffeinate-coffeescript2/lib/coffeescript/nodes'; import { AwaitReturn, Return, YieldReturn } from '../nodes'; import getLocation from '../util/getLocation'; import mapAny from './mapAny'; export default function mapReturn(context, node) { var _a = getLocation(context, node), line = _a.line, column = _a.column, start = _a.start, end = _a.end, raw = _a.raw; var argument = node.expression ? mapAny(context, node.expression) : null; if (node instanceof CoffeeYieldReturn) { return new YieldReturn(line, column, start, end, raw, argument); } else if (node instanceof CoffeeAwaitReturn) { return new AwaitReturn(line, column, start, end, raw, argument); } else { return new Return(line, column, start, end, raw, argument); } }