void OnBuiltinFunction(BuiltinFunction function, MethodInvocationExpression node)
{
switch (function.FunctionType)
{
case BuiltinFunctionType.Switch:
{
OnSwitch(node);
break;
}
case BuiltinFunctionType.AddressOf:
{
OnAddressOf(node);
break;
}
case BuiltinFunctionType.Eval:
{
OnEval(node);
break;
}
case BuiltinFunctionType.InitValueType:
{
OnInitValueType(node);
break;
}
case BuiltinFunctionType.Default:
{
EmitDefaultValue((IType)node.ExpressionType);
break;
}
default:
{
NotImplemented(node, "BuiltinFunction: " + function.FunctionType);
break;
}
}
}