CLRSharp.VBox.SetDirect C# (CSharp) Method

SetDirect() public method

public SetDirect ( object value ) : void
value object
return void
        public void SetDirect(object value)
        {
            switch (typeStack)
            {
                case NumberOnStack.Int32:
                    if (value is bool)
                    {
                        v32 = ((bool)value) ? 1 : 0;
                    }
                    else if (value is int)
                    {
                        v32 = (int)value;
                    }
                    else if(value is uint)
                    {
                        v32 = (int)(uint)value;
                    }
                    else if (value is short)
                    {
                        v32 = (short)value;
                    }
                    else if (value is UInt16)
                    {
                        v32 = (UInt16)value;
                    }
                    else if(value is char)
                    {
                        v32 = (char)value;
                    }
                    else if (value is byte)
                    {
                        v32 = (byte)value;
                    }
                    else if (value is sbyte)
                    {
                        v32 = (sbyte)value;
                    }
                    else
                    {
                        v32 = (int)Convert.ToDecimal(value);
                    }
                    break;
                case NumberOnStack.Int64:
                    if(value is Int64)
                    {
                        v64 = (Int64)value;
                    }
                    else if(value is UInt64)
                    {
                        v64 = (Int64)(UInt64)value;
                    }
                    else
                    {
                        v64 = (Int64)Convert.ToDecimal(value);
                    }

                    break;
                case NumberOnStack.Double:
                    vDF = (double)Convert.ToDecimal(value);
                    break;
            }
        }