in lib/generator.js [2084:2107]
visitReturn(ast, level, env = {}) {
assert.equal(ast.type, 'return');
this.emit('return ', level);
if (!ast.expr) {
this.emit(';\n');
return;
}
if (ast.needCast) {
this.emit('Darabonba.Model.ToObject<');
this.visitType(ast.expectedType);
this.emit('>(');
}
if (ast.expr && ast.expr.type === 'object' && env && env.returnType && _name(env.returnType) === 'object') {
env.castToObject = true;
}
this.visitExpr(ast.expr, level, env);
if (ast.needCast) {
this.emit(')');
}
this.emit(';\n');
}