public override object Clone()
        {
            SQLiteColumnType type = null;

            if (_type != null)
            {
                type = (SQLiteColumnType)_type.Clone();
            }
            List <SQLiteColumnConstraint> conslist = null;

            if (_conslist != null)
            {
                conslist = new List <SQLiteColumnConstraint>();
                foreach (SQLiteColumnConstraint cc in _conslist)
                {
                    conslist.Add((SQLiteColumnConstraint)cc.Clone());
                }
            }

            SQLiteObjectName name = null;

            if (this.ObjectName != null)
            {
                name = (SQLiteObjectName)this.ObjectName.Clone();
            }

            SQLiteColumnStatement res = new SQLiteColumnStatement(name);

            res._conslist = conslist;
            res._type     = type;
            return(res);
        }
        public override bool Equals(object obj)
        {
            if (obj == null)
            {
                return(false);
            }

            SQLiteColumnType dst = obj as SQLiteColumnType;

            if (dst == null)
            {
                return(false);
            }

            if (_name != dst._name || _size != dst._size || _precision != dst._precision)
            {
                return(false);
            }

            return(true);
        }
        public override object Clone()
        {
            SQLiteExpression expr = null;

            if (_expr != null)
            {
                expr = (SQLiteExpression)_expr.Clone();
            }
            SQLiteColumnType type = null;

            if (_type != null)
            {
                type = (SQLiteColumnType)_type.Clone();
            }

            SQLiteCastExpression res = new SQLiteCastExpression();

            res._expr = expr;
            res._type = type;
            return(res);
        }
 public SQLiteCastExpression(SQLiteExpression expr, SQLiteColumnType type)
 {
     _expr = expr;
     _type = type;
 }
 public SQLiteColumnStatement(SQLiteObjectName name, SQLiteColumnType type, List <SQLiteColumnConstraint> conslist)
     : base(name)
 {
     _type     = type;
     _conslist = conslist;
 }