2 // System.Data.SqlTypes.SqlBoolean
5 // Rodrigo Moya (rodrigo@ximian.com)
6 // Daniel Morgan (danmorg@sc.rr.com)
8 // (C) Ximian, Inc. 2002
11 namespace System.Data.SqlTypes
14 /// Represents an integer value that is either 1 or 0
15 /// to be stored in or retrieved from a database.
17 public struct SqlBoolean : INullable, IComparable {
21 // FIXME: populate the static Fields?
24 public static readonly SqlBoolean False;
27 public static readonly SqlBoolean Null;
30 public static readonly SqlBoolean One;
33 public static readonly SqlBoolean True;
36 public static readonly SqlBoolean Zero;
43 public SqlBoolean(bool value) {
44 throw new NotImplementedException ();
48 public SqlBoolean(int value) {
49 throw new NotImplementedException ();
52 #endregion // Constructors
56 public byte ByteValue {
59 throw new NotImplementedException ();
66 throw new NotImplementedException ();
73 throw new NotImplementedException ();
80 throw new NotImplementedException ();
87 throw new NotImplementedException ();
91 #endregion // Properties
94 public static SqlBoolean And(SqlBoolean x, SqlBoolean y) {
95 throw new NotImplementedException ();
99 public int CompareTo(object value) {
100 throw new NotImplementedException ();
104 public override bool Equals(object value) {
108 public static SqlBoolean Equals(SqlBoolean x, SqlBoolean y) {
112 public override int GetHashCode() {
116 public static SqlBoolean NotEquals(SqlBoolean x, SqlBoolean y) {
120 public static SqlBoolean OnesComplement(SqlBoolean x) {
124 public static SqlBoolean Or(SqlBoolean x, SqlBoolean y) {
128 public static SqlBoolean Parse(string s) {
132 public SqlByte ToSqlByte() {
135 // **************************************************
136 // Conversion from SqlBoolean to other SqlTypes
137 // **************************************************
140 public SqlDecimal ToSqlDecimal() {
144 public SqlDouble ToSqlDouble() {
148 public SqlInt16 ToSqlInt16() {
152 public SqlInt32 ToSqlInt32() {
156 public SqlInt64 ToSqlInt64() {
160 public SqlMoney ToSqlMoney() {
164 public SqlSingle ToSqlSingle() {
168 public SqlString ToSqlString() {
172 public override string ToString() {
175 // Bitwise exclusive-OR (XOR)
177 public static SqlBoolean Xor(SqlBoolean x, SqlBoolean y) {
180 // **************************************************
182 // **************************************************
186 public static SqlBoolean operator &(SqlBoolean x, SqlBoolean y) {
191 public static SqlBoolean operator |(SqlBoolean x, SqlBoolean y) {
\r
194 // Compares two instances for equality
196 public static SqlBoolean operator ==(SqlBoolean x, SqlBoolean y) {
199 // Bitwize exclusive-OR (XOR)
201 public static SqlBoolean operator ^(SqlBoolean x, SqlBoolean y) {
204 // test Value of SqlBoolean to determine it is false.
206 public static bool operator false(SqlBoolean x) {
211 public static SqlBoolean operator !=(SqlBoolean x, SqlBoolean y) {
216 public static SqlBoolean operator !(SqlBoolean x) {
221 public static SqlBoolean operator ~(SqlBoolean x) {
224 // test to see if value is true
226 public static bool operator true(SqlBoolean x) {
229 // ****************************************
231 // ****************************************
234 // SqlBoolean to Boolean
236 public static explicit operator bool(SqlBoolean x) {
240 // SqlByte to SqlBoolean
242 public static explicit operator SqlBoolean(SqlByte x) {
245 // SqlDecimal to SqlBoolean
247 public static explicit operator SqlBoolean(SqlDecimal x) {
250 // SqlDouble to SqlBoolean
252 public static explicit operator SqlBoolean(SqlDouble x) {
255 // SqlInt16 to SqlBoolean
257 public static explicit operator SqlBoolean(SqlInt16 x) {
260 // SqlInt32 to SqlBoolean
262 public static explicit operator SqlBoolean(SqlInt32 x) {
265 // SqlInt64 to SqlBoolean
267 public static explicit operator SqlBoolean(SqlInt64 x) {
270 // SqlMoney to SqlBoolean
272 public static explicit operator SqlBoolean(SqlMoney x) {
275 // SqlSingle to SqlBoolean
277 public static explicit operator SqlBoolean(SqlSingle x) {
280 // SqlString to SqlBoolean
282 public static explicit operator SqlBoolean(SqlString x) {
285 // Boolean to SqlBoolean
287 public static implicit operator SqlBoolean(bool x) {