| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183 |
- //
- // OracleBinary.cs
- //
- // Part of the Mono class libraries at
- // mcs/class/System.Data.OracleClient/System.Data.OracleClient
- //
- // Assembly: System.Data.OracleClient.dll
- // Namespace: System.Data.OracleClient
- //
- // Author: Tim Coleman <[email protected]>
- //
- // Copyright (C) Tim Coleman, 2003
- //
- // Licensed under the MIT/X11 License.
- //
- using System;
- using System.IO;
- using System.Data.SqlTypes;
- namespace System.Data.OracleClient {
- public struct OracleBinary : IComparable, INullable {
- #region Fields
- public static readonly OracleBinary Null = new OracleBinary ();
- bool notNull;
- byte[] value;
- #endregion // Fields
- #region Constructors
- public OracleBinary (byte[] b) {
- value = b;
- notNull = true;
- }
- #endregion // Constructors
- #region Properties
- public bool IsNull {
- get { return !notNull; }
- }
- public byte this [int index] {
- get {
- if (IsNull)
- throw new Exception ("Data is null.");
- return value [index];
- }
- }
- public int Length {
- get {
- if (IsNull)
- throw new Exception ("Data is null.");
- return value.Length;
- }
- }
- public byte[] Value {
- get {
- if (IsNull)
- throw new Exception ("Data is null.");
- return value;
- }
- }
- #endregion // Properties
- #region Methods
- [MonoTODO]
- public int CompareTo (object obj) {
- throw new NotImplementedException ();
- }
- [MonoTODO]
- public static OracleBinary Concat (OracleBinary x, OracleBinary y) {
- throw new NotImplementedException ();
- }
- [MonoTODO]
- public override bool Equals (object value) {
- throw new NotImplementedException ();
- }
- public static OracleBoolean Equals (OracleBinary x, OracleBinary y) {
- if (x.IsNull || y.IsNull)
- return OracleBoolean.Null;
- return new OracleBoolean (x.Value == y.Value);
- }
- [MonoTODO]
- public override int GetHashCode () {
- throw new NotImplementedException ();
- }
- [MonoTODO]
- public static OracleBoolean GreaterThan (OracleBinary x, OracleBinary y) {
- if (x.IsNull || y.IsNull)
- return OracleBoolean.Null;
- //return (x.Value > y.Value);
- throw new NotImplementedException ();
- }
- [MonoTODO]
- public static OracleBoolean GreaterThanOrEqual (OracleBinary x, OracleBinary y) {
- if (x.IsNull || y.IsNull)
- return OracleBoolean.Null;
- //return (x.Value >= y.Value);
- throw new NotImplementedException ();
- }
- [MonoTODO]
- public static OracleBoolean LessThan (OracleBinary x, OracleBinary y) {
- if (x.IsNull || y.IsNull)
- return OracleBoolean.Null;
- //return (x.Value < y.Value);
- throw new NotImplementedException ();
- }
- [MonoTODO]
- public static OracleBoolean LessThanOrEqual (OracleBinary x, OracleBinary y) {
- if (x.IsNull || y.IsNull)
- return OracleBoolean.Null;
- //return (x.Value <= y.Value);
- throw new NotImplementedException ();
- }
- [MonoTODO]
- public static OracleBoolean NotEquals (OracleBinary x, OracleBinary y) {
- if (x.IsNull || y.IsNull)
- return OracleBoolean.Null;
- //return (x.Value != y.Value);
- throw new NotImplementedException ();
- }
- #endregion // Methods
- #region Operators and Type Conversions
- public static OracleBinary operator + (OracleBinary x, OracleBinary y) {
- return Concat (x, y);
- }
- public static OracleBoolean operator == (OracleBinary x, OracleBinary y) {
- return Equals (x, y);
- }
- public static OracleBoolean operator > (OracleBinary x, OracleBinary y) {
- return GreaterThan (x, y);
- }
- public static OracleBoolean operator >= (OracleBinary x, OracleBinary y) {
- return GreaterThanOrEqual (x, y);
- }
- public static OracleBoolean operator != (OracleBinary x, OracleBinary y) {
- return NotEquals (x, y);
- }
- public static OracleBoolean operator < (OracleBinary x, OracleBinary y) {
- return LessThan (x, y);
- }
- public static OracleBoolean operator <= (OracleBinary x, OracleBinary y) {
- return LessThan (x, y);
- }
- public static explicit operator byte[] (OracleBinary x) {
- return x.Value;
- }
- public static implicit operator OracleBinary (byte[] b) {
- return new OracleBinary (b);
- }
- #endregion // Operators and Type Conversions
- }
- }
|