Boo.Lang.Compiler.Steps.ConstantFolding.LeaveEnumMember C# (CSharp) Метод

LeaveEnumMember() публичный Метод

public LeaveEnumMember ( EnumMember node ) : void
node Boo.Lang.Compiler.Ast.EnumMember
Результат void
        public override void LeaveEnumMember(EnumMember node)
        {
            if (node.Initializer.NodeType == NodeType.IntegerLiteralExpression)
                return;

            IType type = node.Initializer.ExpressionType;
            if (null != type && (TypeSystemServices.IsIntegerNumber(type) || type.IsEnum))
            {
                object val = GetLiteralValue(node.Initializer);
                if (null != val && val != Error.Default)
                    node.Initializer = new IntegerLiteralExpression(Convert.ToInt64(val));
            }
            return;
        }