Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 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 | 19x 1x 7920x 1x 37x 1x 64x 16x 12x 4x 3x 2x | { Expression } = require './expression'
module.exports.Null = class Null extends Expression
constructor: (json) ->
super
exec: (ctx) ->
null
module.exports.IsNull = class IsNull extends Expression
constructor: (json) ->
super
exec: (ctx) ->
not @execArgs(ctx)?
module.exports.Coalesce = class Coalesce extends Expression
constructor: (json) ->
super
exec: (ctx) ->
for arg in @args
result = arg.execute(ctx)
# if a single arg that's a list, coalesce over the list
if @args.length == 1 && Array.isArray(result)
for item in result
if item? then return item
else
if result? then return result
null
|