diff --git a/SharpLiteSrc/app/SharpLite.Domain/SharpLite.Domain.csproj b/SharpLiteSrc/app/SharpLite.Domain/SharpLite.Domain.csproj
index 2936572..6914c5e 100644
--- a/SharpLiteSrc/app/SharpLite.Domain/SharpLite.Domain.csproj
+++ b/SharpLiteSrc/app/SharpLite.Domain/SharpLite.Domain.csproj
@@ -34,7 +34,8 @@
true
- SharpLite.pfx
+
+
@@ -61,9 +62,6 @@
-
-
-
copy "$(TargetPath)" "$(SolutionDir)build\"
diff --git a/SharpLiteSrc/app/SharpLite.Domain/SharpLite.pfx b/SharpLiteSrc/app/SharpLite.Domain/SharpLite.pfx
deleted file mode 100644
index 15b2fa2..0000000
Binary files a/SharpLiteSrc/app/SharpLite.Domain/SharpLite.pfx and /dev/null differ
diff --git a/SharpLiteSrc/app/SharpLite.EntityFrameworkProvider/SharpLite.EntityFrameworkProvider.csproj b/SharpLiteSrc/app/SharpLite.EntityFrameworkProvider/SharpLite.EntityFrameworkProvider.csproj
index 7b501e3..0b83ac2 100644
--- a/SharpLiteSrc/app/SharpLite.EntityFrameworkProvider/SharpLite.EntityFrameworkProvider.csproj
+++ b/SharpLiteSrc/app/SharpLite.EntityFrameworkProvider/SharpLite.EntityFrameworkProvider.csproj
@@ -34,7 +34,8 @@
true
- SharpLite.pfx
+
+
@@ -63,9 +64,6 @@
SharpLite.Domain
-
-
-
copy "$(TargetPath)" "$(SolutionDir)build\"
diff --git a/SharpLiteSrc/app/SharpLite.EntityFrameworkProvider/SharpLite.pfx b/SharpLiteSrc/app/SharpLite.EntityFrameworkProvider/SharpLite.pfx
deleted file mode 100644
index 498f17d..0000000
Binary files a/SharpLiteSrc/app/SharpLite.EntityFrameworkProvider/SharpLite.pfx and /dev/null differ
diff --git a/SharpLiteSrc/app/SharpLite.NHibernateProvider/SharpLite.NHibernateProvider.csproj b/SharpLiteSrc/app/SharpLite.NHibernateProvider/SharpLite.NHibernateProvider.csproj
index 5198fad..787b15d 100644
--- a/SharpLiteSrc/app/SharpLite.NHibernateProvider/SharpLite.NHibernateProvider.csproj
+++ b/SharpLiteSrc/app/SharpLite.NHibernateProvider/SharpLite.NHibernateProvider.csproj
@@ -34,7 +34,8 @@
true
- SharpLite.pfx
+
+
@@ -70,9 +71,6 @@
SharpLite.Domain
-
-
-
copy "$(TargetPath)" "$(SolutionDir)build\"
diff --git a/SharpLiteSrc/app/SharpLite.NHibernateProvider/SharpLite.pfx b/SharpLiteSrc/app/SharpLite.NHibernateProvider/SharpLite.pfx
deleted file mode 100644
index 3e2c4b3..0000000
Binary files a/SharpLiteSrc/app/SharpLite.NHibernateProvider/SharpLite.pfx and /dev/null differ
diff --git a/SharpLiteSrc/app/SharpLite.Web/Mvc/ModelBinder/SharpModelBinder.cs b/SharpLiteSrc/app/SharpLite.Web/Mvc/ModelBinder/SharpModelBinder.cs
index 093a0f6..f7f8a19 100644
--- a/SharpLiteSrc/app/SharpLite.Web/Mvc/ModelBinder/SharpModelBinder.cs
+++ b/SharpLiteSrc/app/SharpLite.Web/Mvc/ModelBinder/SharpModelBinder.cs
@@ -86,7 +86,7 @@ private static bool IsSimpleGenericBindableEntityCollection(Type propertyType) {
(propertyType.GetGenericTypeDefinition() == typeof(IList<>) ||
propertyType.GetGenericTypeDefinition() == typeof(ICollection<>) ||
propertyType.GetGenericTypeDefinition() ==
- typeof(Iesi.Collections.Generic.ISet<>) ||
+ typeof(ISet<>) ||
propertyType.GetGenericTypeDefinition() == typeof(IEnumerable<>));
var isSimpleGenericBindableEntityCollection = isSimpleGenericBindableCollection &&
diff --git a/SharpLiteSrc/app/SharpLite.Web/SharpLite.Web.csproj b/SharpLiteSrc/app/SharpLite.Web/SharpLite.Web.csproj
index b2a484c..bd28c4a 100644
--- a/SharpLiteSrc/app/SharpLite.Web/SharpLite.Web.csproj
+++ b/SharpLiteSrc/app/SharpLite.Web/SharpLite.Web.csproj
@@ -34,7 +34,8 @@
true
- SharpLite.pfx
+
+
@@ -66,9 +67,6 @@
SharpLite.Domain
-
-
-
copy "$(TargetPath)" "$(SolutionDir)build\"
diff --git a/SharpLiteSrc/app/SharpLite.Web/SharpLite.pfx b/SharpLiteSrc/app/SharpLite.Web/SharpLite.pfx
deleted file mode 100644
index 365756e..0000000
Binary files a/SharpLiteSrc/app/SharpLite.Web/SharpLite.pfx and /dev/null differ
diff --git a/SharpLiteSrc/build/SharpLite.Domain.dll b/SharpLiteSrc/build/SharpLite.Domain.dll
index 7e53c82..93ee5ad 100644
Binary files a/SharpLiteSrc/build/SharpLite.Domain.dll and b/SharpLiteSrc/build/SharpLite.Domain.dll differ
diff --git a/SharpLiteSrc/build/SharpLite.EntityFrameworkProvider.dll b/SharpLiteSrc/build/SharpLite.EntityFrameworkProvider.dll
index 9ab3ccc..82b7e7f 100644
Binary files a/SharpLiteSrc/build/SharpLite.EntityFrameworkProvider.dll and b/SharpLiteSrc/build/SharpLite.EntityFrameworkProvider.dll differ
diff --git a/SharpLiteSrc/build/SharpLite.NHibernateProvider.dll b/SharpLiteSrc/build/SharpLite.NHibernateProvider.dll
index 479ab36..14035fe 100644
Binary files a/SharpLiteSrc/build/SharpLite.NHibernateProvider.dll and b/SharpLiteSrc/build/SharpLite.NHibernateProvider.dll differ
diff --git a/SharpLiteSrc/build/SharpLite.Web.dll b/SharpLiteSrc/build/SharpLite.Web.dll
index fbf6db3..dc32b19 100644
Binary files a/SharpLiteSrc/build/SharpLite.Web.dll and b/SharpLiteSrc/build/SharpLite.Web.dll differ
diff --git a/SharpLiteSrc/lib/Iesi.Collections.dll b/SharpLiteSrc/lib/Iesi.Collections.dll
index 894206a..f78f4ad 100644
Binary files a/SharpLiteSrc/lib/Iesi.Collections.dll and b/SharpLiteSrc/lib/Iesi.Collections.dll differ
diff --git a/SharpLiteSrc/lib/Iesi.Collections.xml b/SharpLiteSrc/lib/Iesi.Collections.xml
index 22ebfde..dbe93d5 100644
--- a/SharpLiteSrc/lib/Iesi.Collections.xml
+++ b/SharpLiteSrc/lib/Iesi.Collections.xml
@@ -4,1900 +4,538 @@
Iesi.Collections
-
-
- DictionarySet is an abstract class that supports the creation of new Set
- types where the underlying data store is an IDictionary instance.
-
- You can use any object that implements the IDictionary interface to hold set data.
- You can define your own, or you can use one of the objects provided in the Framework.
- The type of IDictionary you choose will affect both the performance and the behavior
- of the Set using it.
-
- To make a Set typed based on your own IDictionary, simply derive a
- new class with a constructor that takes no parameters. Some Set implmentations
- cannot be defined with a default constructor. If this is the case for your class,
- you will need to override Clone() as well.
-
- It is also standard practice that at least one of your constructors takes an ICollection or
- an ISet as an argument.
-
-
-
- A collection that contains no duplicate elements. This class models the mathematical
- Set abstraction, and is the base class for all other Set implementations.
- The order of elements in a set is dependant on (a)the data-structure implementation, and
- (b)the implementation of the various Set methods, and thus is not guaranteed.
-
- None of the Set implementations in this library are guranteed to be thread-safe
- in any way unless wrapped in a SynchronizedSet.
-
- The following table summarizes the binary operators that are supported by the Set class.
-
-
- Operation
- Description
- Method
- Operator
-
- -
- Union (OR)
- Element included in result if it exists in either A OR B.
- Union()
- |
-
- -
- Intersection (AND)
- Element included in result if it exists in both A AND B.
- InterSect()
- &
-
- -
- Exclusive Or (XOR)
- Element included in result if it exists in one, but not both, of A and B.
- ExclusiveOr()
- ^
-
- -
- Minus (n/a)
- Take all the elements in A. Now, if any of them exist in B, remove
- them. Note that unlike the other operators, A - B is not the same as B - A.
- Minus()
- -
-
-
-
-
-
-
- A collection that contains no duplicate elements. This interface models the mathematical
- Set abstraction.
- The order of elements in a set is dependant on (a)the data-structure implementation, and
- (b)the implementation of the various Set methods, and thus is not guaranteed.
-
- None of the Set implementations in this library are guranteed to be thread-safe
- in any way unless wrapped in a SynchronizedSet.
-
- The following table summarizes the binary operators that are supported by the Set class.
-
-
- Operation
- Description
- Method
-
- -
- Union (OR)
- Element included in result if it exists in either A OR B.
- Union()
-
- -
- Intersection (AND)
- Element included in result if it exists in both A AND B.
- InterSect()
-
- -
- Exclusive Or (XOR)
- Element included in result if it exists in one, but not both, of A and B.
- ExclusiveOr()
-
- -
- Minus (n/a)
- Take all the elements in A. Now, if any of them exist in B, remove
- them. Note that unlike the other operators, A - B is not the same as B - A.
- Minus()
-
-
-
-
-
-
- Performs a "union" of the two sets, where all the elements
- in both sets are present. That is, the element is included if it is in either a or b.
- Neither this set nor the input set are modified during the operation. The return value
- is a Clone() of this set with the extra elements added in.
-
- A collection of elements.
- A new Set containing the union of this Set with the specified collection.
- Neither of the input objects is modified by the union.
-
-
-
- Performs an "intersection" of the two sets, where only the elements
- that are present in both sets remain. That is, the element is included if it exists in
- both sets. The Intersect() operation does not modify the input sets. It returns
- a Clone() of this set with the appropriate elements removed.
-
- A set of elements.
- The intersection of this set with a.
-
-
-
- Performs a "minus" of set b from set a. This returns a set of all
- the elements in set a, removing the elements that are also in set b.
- The original sets are not modified during this operation. The result set is a Clone()
- of this Set containing the elements from the operation.
-
- A set of elements.
- A set containing the elements from this set with the elements in a removed.
-
-
-
- Performs an "exclusive-or" of the two sets, keeping only the elements that
- are in one of the sets, but not in both. The original sets are not modified
- during this operation. The result set is a Clone() of this set containing
- the elements from the exclusive-or operation.
-
- A set of elements.
- A set containing the result of a ^ b.
-
-
-
- Returns if the set contains all the elements in the specified collection.
-
- A collection of objects.
- if the set contains all the elements in the specified collection, otherwise.
-
-
-
- Adds the specified element to this set if it is not already present.
-
- The object to add to the set.
- is the object was added, if it was already present.
-
-
-
- Adds all the elements in the specified collection to the set if they are not already present.
-
- A collection of objects to add to the set.
- is the set changed as a result of this operation, if not.
-
-
-
- Remove all the specified elements from this set, if they exist in this set.
-
- A collection of elements to remove.
- if the set was modified as a result of this operation.
-
-
+
- Retains only the elements in this set that are contained in the specified collection.
+ Implementation of ISet that also maintains a linked list over all elements.
+ Enumeration of this set is guaranteed to return the elements in the order
+ they were added.
- Collection that defines the set of elements to be retained.
- if this set changed as a result of this operation.
-
+
- Returns if this set contains no elements.
-
-
-
-
- A collection that contains no duplicate elements. This interface models the mathematical
- Set abstraction.
- The order of elements in a set is dependant on (a)the data-structure implementation, and
- (b)the implementation of the various Set methods, and thus is not guaranteed.
-
- None of the Set implementations in this library are guranteed to be thread-safe
- in any way unless wrapped in a SynchronizedSet.
-
- The following table summarizes the binary operators that are supported by the Set class.
-
-
- Operation
- Description
- Method
-
- -
- Union (OR)
- Element included in result if it exists in either A OR B.
- Union()
-
- -
- Intersection (AND)
- Element included in result if it exists in both A AND B.
- InterSect()
-
- -
- Exclusive Or (XOR)
- Element included in result if it exists in one, but not both, of A and B.
- ExclusiveOr()
-
- -
- Minus (n/a)
- Take all the elements in A. Now, if any of them exist in B, remove
- them. Note that unlike the other operators, A - B is not the same as B - A.
- Minus()
-
-
-
-
-
-
- Performs a "union" of the two sets, where all the elements
- in both sets are present. That is, the element is included if it is in either a or b.
- Neither this set nor the input set are modified during the operation. The return value
- is a Clone() of this set with the extra elements added in.
-
- A collection of elements.
- A new Set containing the union of this Set with the specified collection.
- Neither of the input objects is modified by the union.
-
-
-
- Performs an "intersection" of the two sets, where only the elements
- that are present in both sets remain. That is, the element is included if it exists in
- both sets. The Intersect() operation does not modify the input sets. It returns
- a Clone() of this set with the appropriate elements removed.
-
- A set of elements.
- The intersection of this set with a.
-
-
-
- Performs a "minus" of set b from set a. This returns a set of all
- the elements in set a, removing the elements that are also in set b.
- The original sets are not modified during this operation. The result set is a Clone()
- of this Set containing the elements from the operation.
-
- A set of elements.
- A set containing the elements from this set with the elements in a removed.
-
-
-
- Performs an "exclusive-or" of the two sets, keeping only the elements that
- are in one of the sets, but not in both. The original sets are not modified
- during this operation. The result set is a Clone() of this set containing
- the elements from the exclusive-or operation.
-
- A set of elements.
- A set containing the result of a ^ b.
-
-
-
- Returns if this set contains the specified element.
-
- The element to look for.
- if this set contains the specified element, otherwise.
-
-
-
- Returns if the set contains all the elements in the specified collection.
-
- A collection of objects.
- if the set contains all the elements in the specified collection, otherwise.
-
-
-
- Adds the specified element to this set if it is not already present.
-
- The object to add to the set.
- is the object was added, if it was already present.
-
-
-
- Adds all the elements in the specified collection to the set if they are not already present.
-
- A collection of objects to add to the set.
- is the set changed as a result of this operation, if not.
-
-
-
- Removes the specified element from the set.
-
- The element to be removed.
- if the set contained the specified element, otherwise.
-
-
-
- Remove all the specified elements from this set, if they exist in this set.
-
- A collection of elements to remove.
- if the set was modified as a result of this operation.
-
-
-
- Retains only the elements in this set that are contained in the specified collection.
-
- Collection that defines the set of elements to be retained.
- if this set changed as a result of this operation.
-
-
-
- Removes all objects from the set.
-
-
-
-
- Returns if this set contains no elements.
-
-
-
-
- Performs a "union" of the two sets, where all the elements
- in both sets are present. That is, the element is included if it is in either a or b.
- Neither this set nor the input set are modified during the operation. The return value
- is a Clone() of this set with the extra elements added in.
-
- A collection of elements.
- A new Set containing the union of this Set with the specified collection.
- Neither of the input objects is modified by the union.
-
-
-
- Performs a "union" of two sets, where all the elements
- in both are present. That is, the element is included if it is in either a or b.
- The return value is a Clone() of one of the sets (a if it is not ) with elements of the other set
- added in. Neither of the input sets is modified by the operation.
-
- A set of elements.
- A set of elements.
- A set containing the union of the input sets. if both sets are .
-
-
-
- Performs a "union" of two sets, where all the elements
- in both are present. That is, the element is included if it is in either a or b.
- The return value is a Clone() of one of the sets (a if it is not ) with elements of the other set
- added in. Neither of the input sets is modified by the operation.
-
- A set of elements.
- A set of elements.
- A set containing the union of the input sets. if both sets are .
-
-
-
- Performs an "intersection" of the two sets, where only the elements
- that are present in both sets remain. That is, the element is included if it exists in
- both sets. The Intersect() operation does not modify the input sets. It returns
- a Clone() of this set with the appropriate elements removed.
-
- A set of elements.
- The intersection of this set with a.
-
-
-
- Performs an "intersection" of the two sets, where only the elements
- that are present in both sets remain. That is, the element is included only if it exists in
- both a and b. Neither input object is modified by the operation.
- The result object is a Clone() of one of the input objects (a if it is not ) containing the
- elements from the intersect operation.
-
- A set of elements.
- A set of elements.
- The intersection of the two input sets. if both sets are .
-
-
-
- Performs an "intersection" of the two sets, where only the elements
- that are present in both sets remain. That is, the element is included only if it exists in
- both a and b. Neither input object is modified by the operation.
- The result object is a Clone() of one of the input objects (a if it is not ) containing the
- elements from the intersect operation.
-
- A set of elements.
- A set of elements.
- The intersection of the two input sets. if both sets are .
-
-
-
- Performs a "minus" of set b from set a. This returns a set of all
- the elements in set a, removing the elements that are also in set b.
- The original sets are not modified during this operation. The result set is a Clone()
- of this Set containing the elements from the operation.
-
- A set of elements.
- A set containing the elements from this set with the elements in a removed.
-
-
-
- Performs a "minus" of set b from set a. This returns a set of all
- the elements in set a, removing the elements that are also in set b.
- The original sets are not modified during this operation. The result set is a Clone()
- of set a containing the elements from the operation.
-
- A set of elements.
- A set of elements.
- A set containing A - B elements. if a is .
-
-
-
- Performs a "minus" of set b from set a. This returns a set of all
- the elements in set a, removing the elements that are also in set b.
- The original sets are not modified during this operation. The result set is a Clone()
- of set a containing the elements from the operation.
-
- A set of elements.
- A set of elements.
- A set containing A - B elements. if a is .
-
-
-
- Performs an "exclusive-or" of the two sets, keeping only the elements that
- are in one of the sets, but not in both. The original sets are not modified
- during this operation. The result set is a Clone() of this set containing
- the elements from the exclusive-or operation.
-
- A set of elements.
- A set containing the result of a ^ b.
-
-
-
- Performs an "exclusive-or" of the two sets, keeping only the elements that
- are in one of the sets, but not in both. The original sets are not modified
- during this operation. The result set is a Clone() of one of the sets
- (a if it is not ) containing
- the elements from the exclusive-or operation.
-
- A set of elements.
- A set of elements.
- A set containing the result of a ^ b. if both sets are .
-
-
-
- Performs an "exclusive-or" of the two sets, keeping only the elements that
- are in one of the sets, but not in both. The original sets are not modified
- during this operation. The result set is a Clone() of one of the sets
- (a if it is not ) containing
- the elements from the exclusive-or operation.
-
- A set of elements.
- A set of elements.
- A set containing the result of a ^ b. if both sets are .
-
-
-
- Adds the specified element to this set if it is not already present.
-
- The object to add to the set.
- is the object was added, if it was already present.
-
-
-
- Adds all the elements in the specified collection to the set if they are not already present.
-
- A collection of objects to add to the set.
- is the set changed as a result of this operation, if not.
-
-
-
- Removes all objects from the set.
-
-
-
-
- Returns if this set contains the specified element.
-
- The element to look for.
- if this set contains the specified element, otherwise.
-
-
-
- Returns if the set contains all the elements in the specified collection.
-
- A collection of objects.
- if the set contains all the elements in the specified collection, otherwise.
-
-
-
- Removes the specified element from the set.
-
- The element to be removed.
- if the set contained the specified element, otherwise.
-
-
-
- Remove all the specified elements from this set, if they exist in this set.
-
- A collection of elements to remove.
- if the set was modified as a result of this operation.
-
-
-
- Retains only the elements in this set that are contained in the specified collection.
-
- Collection that defines the set of elements to be retained.
- if this set changed as a result of this operation.
-
-
-
- Returns a clone of the Set instance. This will work for derived Set
- classes if the derived class implements a constructor that takes no arguments.
-
- A clone of this object.
-
-
-
- Copies the elements in the Set to an array. The type of array needs
- to be compatible with the objects in the Set, obviously.
-
- An array that will be the target of the copy operation.
- The zero-based index where copying will start.
-
-
-
- Gets an enumerator for the elements in the Set.
-
- An IEnumerator over the elements in the Set.
-
-
-
- Performs CopyTo when called trhough non-generic ISet (ICollection) interface
-
-
-
-
-
-
- Performs Union when called trhough non-generic ISet interface
-
-
-
-
-
-
- Performs Minus when called trhough non-generic ISet interface
-
-
-
-
-
-
- Performs Intersect when called trhough non-generic ISet interface
-
-
-
-
-
-
- Performs ExclusiveOr when called trhough non-generic ISet interface
-
-
-
-
-
-
- Returns if this set contains no elements.
-
-
-
-
- The number of elements currently contained in this collection.
-
-
-
-
- Returns if the Set is synchronized across threads. Note that
- enumeration is inherently not thread-safe. Use the SyncRoot to lock the
- object during enumeration.
-
-
-
-
- An object that can be used to synchronize this collection to make it thread-safe.
- When implementing this, if your object uses a base object, like an IDictionary,
- or anything that has a SyncRoot, return that object instead of "this".
-
-
-
-
- Indicates whether the given instance is read-only or not
-
-
- if the ISet is read-only; otherwise, .
- In the default implementation of Set, this property always returns false.
-
-
-
-
- Provides the storage for elements in the Set, stored as the key-set
- of the IDictionary object. Set this object in the constructor
- if you create your own Set class.
-
-
-
-
- Adds the specified element to this set if it is not already present.
-
- The to add to the set.
- is the object was added, if it was already present.
-
-
-
- Adds all the elements in the specified collection to the set if they are not already present.
-
- A collection of objects to add to the set.
- is the set changed as a result of this operation, if not.
-
-
-
- Removes all objects from the set.
-
-
-
-
- Returns if this set contains the specified element.
-
- The element to look for.
- if this set contains the specified element, otherwise.
-
-
-
- Returns if the set contains all the elements in the specified collection.
-
- A collection of objects.
- if the set contains all the elements in the specified collection, otherwise.
-
-
-
- Removes the specified element from the set.
-
- The element to be removed.
- if the set contained the specified element, otherwise.
-
-
-
- Remove all the specified elements from this set, if they exist in this set.
-
- A collection of elements to remove.
- if the set was modified as a result of this operation.
-
-
-
- Retains only the elements in this set that are contained in the specified collection.
-
- Collection that defines the set of elements to be retained.
- if this set changed as a result of this operation.
-
-
-
- Copies the elements in the Set to an array of T. The type of array needs
- to be compatible with the objects in the Set, obviously.
-
- An array that will be the target of the copy operation.
- The zero-based index where copying will start.
-
-
-
- Gets an enumerator for the elements in the Set.
-
- An IEnumerator over the elements in the Set.
-
-
-
- Copies the elements in the Set to an array. The type of array needs
- to be compatible with the objects in the Set, obviously. Needed for
- non-generic ISet methods implementation
-
- An array that will be the target of the copy operation.
- The zero-based index where copying will start.
-
-
-
- The placeholder object used as the value for the IDictionary instance.
-
-
- There is a single instance of this object globally, used for all Sets.
-
-
-
-
- Returns if this set contains no elements.
-
-
-
-
- The number of elements contained in this collection.
-
-
-
-
- None of the objects based on DictionarySet are synchronized. Use the
- SyncRoot property instead.
-
-
-
-
- Returns an object that can be used to synchronize the Set between threads.
-
-
-
-
- Indicates wether the Set is read-only or not
-
-
-
-
- Implements a Set based on a Dictionary (which is equivalent of
- non-genric HashTable) This will give the best lookup, add, and remove
- performance for very large data-sets, but iteration will occur in no particular order.
-
-
-
-
- Creates a new set instance based on a Dictinary.
-
-
-
-
- Creates a new set instance based on a Dictinary and
- initializes it based on a collection of elements.
-
- A collection of elements that defines the initial set contents.
-
-
-
- Implements an immutable (read-only) Set wrapper.
- Although this is advertised as immutable, it really isn't. Anyone with access to the
- basisSet can still change the data-set. So GetHashCode() is not implemented
- for this Set, as is the case for all Set implementations in this library.
- This design decision was based on the efficiency of not having to Clone() the
- basisSet every time you wrap a mutable Set.
-
-
-
-
- Constructs an immutable (read-only) Set wrapper.
-
- The Set that is wrapped.
-
-
-
- Adds the specified element to this set if it is not already present.
-
- The object to add to the set.
- nothing
- is always thrown
-
-
-
- Adds all the elements in the specified collection to the set if they are not already present.
-
- A collection of objects to add to the set.
- nothing
- is always thrown
-
-
-
- Removes all objects from the set.
-
- is always thrown
-
-
-
- Returns if this set contains the specified element.
-
- The element to look for.
- if this set contains the specified element, otherwise.
-
-
-
- Returns if the set contains all the elements in the specified collection.
-
- A collection of objects.
- if the set contains all the elements in the specified collection, otherwise.
-
-
-
- Removes the specified element from the set.
-
- The element to be removed.
- nothing
- is always thrown
-
-
-
- Remove all the specified elements from this set, if they exist in this set.
-
- A collection of elements to remove.
- nothing
- is always thrown
-
-
-
- Retains only the elements in this set that are contained in the specified collection.
-
- Collection that defines the set of elements to be retained.
- nothing
- is always thrown
-
-
-
- Copies the elements in the Set to an array of T. The type of array needs
- to be compatible with the objects in the Set, obviously.
-
- An array that will be the target of the copy operation.
- The zero-based index where copying will start.
-
-
-
- Gets an enumerator for the elements in the Set.
-
- An IEnumerator over the elements in the Set.
-
-
-
- Returns a clone of the Set instance.
-
- A clone of this object.
-
-
-
- Performs a "union" of the two sets, where all the elements
- in both sets are present. That is, the element is included if it is in either a or b.
- Neither this set nor the input set are modified during the operation. The return value
- is a Clone() of this set with the extra elements added in.
-
- A collection of elements.
- A new Set containing the union of this Set with the specified collection.
- Neither of the input objects is modified by the union.
-
-
-
- Performs an "intersection" of the two sets, where only the elements
- that are present in both sets remain. That is, the element is included if it exists in
- both sets. The Intersect() operation does not modify the input sets. It returns
- a Clone() of this set with the appropriate elements removed.
-
- A set of elements.
- The intersection of this set with a.
-
-
-
- Performs a "minus" of set b from set a. This returns a set of all
- the elements in set a, removing the elements that are also in set b.
- The original sets are not modified during this operation. The result set is a Clone()
- of this Set containing the elements from the operation.
-
- A set of elements.
- A set containing the elements from this set with the elements in a removed.
-
-
-
- Performs an "exclusive-or" of the two sets, keeping only the elements that
- are in one of the sets, but not in both. The original sets are not modified
- during this operation. The result set is a Clone() of this set containing
- the elements from the exclusive-or operation.
-
- A set of elements.
- A set containing the result of a ^ b.
-
-
-
- Performs CopyTo when called trhough non-generic ISet (ICollection) interface
-
-
-
-
-
-
- Performs Union when called trhough non-generic ISet interface
-
-
-
-
-
-
- Performs Minus when called trhough non-generic ISet interface
-
-
-
-
-
-
- Performs Intersect when called trhough non-generic ISet interface
-
-
-
-
-
-
- Performs ExclusiveOr when called trhough non-generic ISet interface
-
-
-
-
-
-
- Returns if this set contains no elements.
-
-
-
-
- The number of elements contained in this collection.
-
-
-
-
- Returns an object that can be used to synchronize use of the Set across threads.
-
-
-
-
- Returns an object that can be used to synchronize the Set between threads.
-
-
-
-
- Indicates that the given instance is read-only
-
-
-
-
- Implements an ordered Set based on a dictionary.
-
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Initializes a new instance of the class.
-
- A collection of elements that defines the initial set contents.
-
-
-
- Implements a Set based on a sorted tree. This gives good performance for operations on very
- large data-sets, though not as good - asymptotically - as a HashedSet. However, iteration
- occurs in order. Elements that you put into this type of collection must implement IComparable,
- and they must actually be comparable. You can't mix string and int values, for example.
-
-
-
-
- Creates a new set instance based on a sorted tree.
-
-
-
-
- Creates a new set instance based on a sorted tree.
-
- The to use for sorting.
-
-
-
- Creates a new set instance based on a sorted tree and
- initializes it based on a collection of elements.
-
- A collection of elements that defines the initial set contents.
-
-
-
- Creates a new set instance based on a sorted tree and
- initializes it based on a collection of elements.
-
- A collection of elements that defines the initial set contents.
-
-
-
- Creates a new set instance based on a sorted tree and
- initializes it based on a collection of elements.
-
- A collection of elements that defines the initial set contents.
- The to use for sorting.
-
-
-
- Implements a thread-safe Set wrapper. The implementation is extremely conservative,
- serializing critical sections to prevent possible deadlocks, and locking on everything.
- The one exception is for enumeration, which is inherently not thread-safe. For this, you
- have to lock the SyncRoot object for the duration of the enumeration.
-
-
-
-
- Constructs a thread-safe Set wrapper.
-
- The Set object that this object will wrap.
-
-
-
- Adds the specified element to this set if it is not already present.
-
- The object to add to the set.
- is the object was added, if it was already present.
-
-
-
- Adds all the elements in the specified collection to the set if they are not already present.
-
- A collection of objects to add to the set.
- is the set changed as a result of this operation, if not.
-
-
-
- Removes all objects from the set.
-
-
-
-
- Returns if this set contains the specified element.
-
- The element to look for.
- if this set contains the specified element, otherwise.
-
-
-
- Returns if the set contains all the elements in the specified collection.
-
- A collection of objects.
- if the set contains all the elements in the specified collection, otherwise.
-
-
-
- Removes the specified element from the set.
-
- The element to be removed.
- if the set contained the specified element, otherwise.
-
-
-
- Remove all the specified elements from this set, if they exist in this set.
-
- A collection of elements to remove.
- if the set was modified as a result of this operation.
-
-
-
- Retains only the elements in this set that are contained in the specified collection.
-
- Collection that defines the set of elements to be retained.
- if this set changed as a result of this operation.
-
-
-
- Copies the elements in the Set to an array. The type of array needs
- to be compatible with the objects in the Set, obviously.
-
- An array that will be the target of the copy operation.
- The zero-based index where copying will start.
-
-
-
- Enumeration is, by definition, not thread-safe. Use a lock on the SyncRoot
- to synchronize the entire enumeration process.
-
-
-
-
-
- Returns a clone of the Set instance.
-
- A clone of this object.
-
-
-
- Performs CopyTo when called trhough non-generic ISet (ICollection) interface
-
-
-
-
-
-
- Returns if this set contains no elements.
-
-
-
-
- The number of elements contained in this collection.
-
-
-
-
- Returns , indicating that this object is thread-safe. The exception to this
- is enumeration, which is inherently not thread-safe. Use the SyncRoot object to
- lock this object for the entire duration of the enumeration.
-
-
-
-
- Returns an object that can be used to synchronize the Set between threads.
-
-
-
-
- Indicates whether given instace is read-only or not
-
-
-
-
- DictionarySet is an abstract class that supports the creation of new Set
- types where the underlying data store is an IDictionary instance.
-
- You can use any object that implements the IDictionary interface to hold set data.
- You can define your own, or you can use one of the objects provided in the Framework.
- The type of IDictionary you choose will affect both the performance and the behavior
- of the Set using it.
-
- To make a Set typed based on your own IDictionary, simply derive a
- new class with a constructor that takes no parameters. Some Set implmentations
- cannot be defined with a default constructor. If this is the case for your class,
- you will need to override Clone() as well.
-
- It is also standard practice that at least one of your constructors takes an ICollection or
- an ISet as an argument.
-
-
-
- A collection that contains no duplicate elements.
-
-
- This class models the mathematical set abstraction, and is the base class for all
- other set implementations. The order of elements in a set is dependant on
- (a) the data-structure implementation, and (b) the implementation of the various
- methods, and thus is not guaranteed.
-
-
- None of the implementations in this library are guranteed to be thread-safe
- in any way unless wrapped in a .
-
-
- The following table summarizes the binary operators that are supported by the
- type.
-
-
-
- Operation
- Description
- Method
- Operator
-
- -
- Union (OR)
- Element included in result if it exists in either A OR B.
- Union()
- |
-
- -
- Intersection (AND)
- Element included in result if it exists in both A AND B.
- InterSect()
- &
-
- -
- Exclusive Or (XOR)
- Element included in result if it exists in one, but not both, of A and B.
- ExclusiveOr()
- ^
-
- -
- Minus (n/a)
- Take all the elements in A. Now, if any of them exist in B, remove
- them. Note that unlike the other operators, A - B is not the same as B - A.
- Minus()
- -
-
-
-
-
-
-
- Performs a "union" of the two sets, where all the elements
- in both sets are present. That is, the element is included if it is in either a or b.
- Neither this set nor the input set are modified during the operation. The return value
- is a clone of this set with the extra elements added in.
-
- A collection of elements.
- A new instance containing the union of this instance with the specified collection.
- Neither of the input objects is modified by the union.
-
-
-
- Performs a "union" of two sets, where all the elements
- in both are present. That is, the element is included if it is in either a or b.
- The return value is a clone of one of the sets (a if it is not ) with elements of the other set
- added in. Neither of the input sets is modified by the operation.
-
- A set of elements.
- A set of elements.
- A set containing the union of the input sets. if both sets are .
-
-
-
- Performs a "union" of two sets, where all the elements
- in both are present. That is, the element is included if it is in either a or b.
- The return value is a clone of one of the sets (a if it is not ) with elements of the other set
- added in. Neither of the input sets is modified by the operation.
-
- A set of elements.
- A set of elements.
- A set containing the union of the input sets. if both sets are .
-
-
-
- Performs an "intersection" of the two sets, where only the elements
- that are present in both sets remain. That is, the element is included if it exists in
- both sets. The Intersect() operation does not modify the input sets. It returns
- a Clone() of this set with the appropriate elements removed.
-
- A set of elements.
- The intersection of this set with a.
-
-
-
- Performs an "intersection" of the two sets, where only the elements
- that are present in both sets remain. That is, the element is included only if it exists in
- both a and b. Neither input object is modified by the operation.
- The result object is a Clone() of one of the input objects (a if it is not ) containing the
- elements from the intersect operation.
-
- A set of elements.
- A set of elements.
- The intersection of the two input sets. if both sets are .
-
-
-
- Performs an "intersection" of the two sets, where only the elements
- that are present in both sets remain. That is, the element is included only if it exists in
- both a and b. Neither input object is modified by the operation.
- The result object is a Clone() of one of the input objects (a if it is not ) containing the
- elements from the intersect operation.
-
- A set of elements.
- A set of elements.
- The intersection of the two input sets. if both sets are .
-
-
-
- Performs a "minus" of set b from set a. This returns a set of all
- the elements in set a, removing the elements that are also in set b.
- The original sets are not modified during this operation. The result set is a Clone()
- of this Set containing the elements from the operation.
-
- A set of elements.
- A set containing the elements from this set with the elements in a removed.
-
-
-
- Performs a "minus" of set b from set a. This returns a set of all
- the elements in set a, removing the elements that are also in set b.
- The original sets are not modified during this operation. The result set is a Clone()
- of set a containing the elements from the operation.
-
- A set of elements.
- A set of elements.
- A set containing A - B elements. if a is .
-
-
-
- Performs a "minus" of set b from set a. This returns a set of all
- the elements in set a, removing the elements that are also in set b.
- The original sets are not modified during this operation. The result set is a Clone()
- of set a containing the elements from the operation.
-
- A set of elements.
- A set of elements.
- A set containing A - B elements. if a is .
-
-
-
- Performs an "exclusive-or" of the two sets, keeping only the elements that
- are in one of the sets, but not in both. The original sets are not modified
- during this operation. The result set is a clone of this set containing
- the elements from the exclusive-or operation.
-
- A set of elements.
- A set containing the result of a ^ b.
-
-
-
- Performs an "exclusive-or" of the two sets, keeping only the elements that
- are in one of the sets, but not in both. The original sets are not modified
- during this operation. The result set is a clone of one of the sets
- (a if it is not ) containing
- the elements from the exclusive-or operation.
-
- A set of elements.
- A set of elements.
- A set containing the result of a ^ b. if both sets are .
-
-
-
- Performs an "exclusive-or" of the two sets, keeping only the elements that
- are in one of the sets, but not in both. The original sets are not modified
- during this operation. The result set is a clone of one of the sets
- (a if it is not ) containing
- the elements from the exclusive-or operation.
-
- A set of elements.
- A set of elements.
- A set containing the result of a ^ b. if both sets are .
-
-
-
- Adds the specified element to this set if it is not already present.
-
- The object to add to the set.
- is the object was added, if it was already present.
-
-
-
- Adds all the elements in the specified collection to the set if they are not already present.
-
- A collection of objects to add to the set.
- is the set changed as a result of this operation, if not.
-
-
-
- Removes all objects from the set.
-
-
-
-
- Returns if this set contains the specified element.
-
- The element to look for.
- if this set contains the specified element, otherwise.
-
-
-
- Returns if the set contains all the elements in the specified collection.
-
- A collection of objects.
- if the set contains all the elements in the specified collection, otherwise.
-
-
-
- Removes the specified element from the set.
-
- The element to be removed.
- if the set contained the specified element, otherwise.
-
-
-
- Remove all the specified elements from this set, if they exist in this set.
-
- A collection of elements to remove.
- if the set was modified as a result of this operation.
-
-
-
- Retains only the elements in this set that are contained in the specified collection.
-
- Collection that defines the set of elements to be retained.
- if this set changed as a result of this operation.
-
-
-
- Returns a clone of the set instance. This will work for derived set
- classes if the derived class implements a constructor that takes no arguments.
-
- A clone of this object.
-
-
-
- Copies the elements in the set to an array. The type of array needs
- to be compatible with the objects in the set, obviously.
-
- An array that will be the target of the copy operation.
- The zero-based index where copying will start.
-
-
-
- Returns an enumerator that iterates through the set.
+ Returns an enumerator that iterates through the collection.
- An object that can be used to iterate through the set.
+ A that can be used to iterate through the collection.
+ 1
-
-
- Returns if this set contains no elements.
-
-
-
-
- The number of elements currently contained in this collection.
-
-
-
-
- Returns if the set is synchronized across threads. Note that
- enumeration is inherently not thread-safe. Use the to lock the
- object during enumeration.
-
-
-
-
- An object that can be used to synchronize this collection to make it thread-safe.
- When implementing this, if your object uses a base object, like an ,
- or anything that has a , return that object instead
- of .
-
-
-
+
- Provides the storage for elements in the Set, stored as the key-set
- of the IDictionary object. Set this object in the constructor
- if you create your own Set class.
+ Returns an enumerator that iterates through a collection.
+
+ An object that can be used to iterate through the collection.
+
+ 2
-
+
- Adds the specified element to this set if it is not already present.
+ Adds an item to the .
- The object to add to the set.
- is the object was added, if it was already present.
+ The object to add to the .The is read-only.
-
+
- Adds all the elements in the specified collection to the set if they are not already present.
+ Removes all items from the .
- A collection of objects to add to the set.
- is the set changed as a result of this operation, if not.
+ The is read-only.
-
+
- Removes all objects from the set.
+ Determines whether the contains a specific value.
+
+ true if is found in the ; otherwise, false.
+
+ The object to locate in the .
-
+
- Returns if this set contains the specified element.
+ Copies the elements of the to an , starting at a particular index.
- The element to look for.
- if this set contains the specified element, otherwise.
+ The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing.The zero-based index in at which copying begins. is null. is less than 0. is multidimensional.-or-The number of elements in the source is greater than the available space from to the end of the destination .-or-Type cannot be cast automatically to the type of the destination .
-
+
- Returns if the set contains all the elements in the specified collection.
+ Removes the first occurrence of a specific object from the .
- A collection of objects.
- if the set contains all the elements in the specified collection, otherwise.
+
+ true if was successfully removed from the ; otherwise, false. This method also returns false if is not found in the original .
+
+ The object to remove from the .The is read-only.
-
+
- Removes the specified element from the set.
+ Modifies the current set so that it contains all elements that are present in either the current set or the specified collection.
- The element to be removed.
- if the set contained the specified element, otherwise.
+ The collection to compare to the current set. is null.
-
+
- Remove all the specified elements from this set, if they exist in this set.
+ Modifies the current set so that it contains only elements that are also in a specified collection.
- A collection of elements to remove.
- if the set was modified as a result of this operation.
+ The collection to compare to the current set. is null.
-
+
- Retains only the elements in this set that are contained in the specified collection.
+ Removes all elements in the specified collection from the current set.
- Collection that defines the set of elements to be retained.
- if this set changed as a result of this operation.
+ The collection of items to remove from the set. is null.
-
+
- Copies the elements in the Set to an array. The type of array needs
- to be compatible with the objects in the Set, obviously.
+ Modifies the current set so that it contains only elements that are present either in the current set or in the specified collection, but not both.
- An array that will be the target of the copy operation.
- The zero-based index where copying will start.
+ The collection to compare to the current set. is null.
-
+
- Gets an enumerator for the elements in the Set.
+ Determines whether a set is a subset of a specified collection.
- An IEnumerator over the elements in the Set.
+
+ true if the current set is a subset of ; otherwise, false.
+
+ The collection to compare to the current set. is null.
-
+
- The placeholder object used as the value for the IDictionary instance.
+ Determines whether the current set is a superset of a specified collection.
-
- There is a single instance of this object globally, used for all Sets.
-
+
+ true if the current set is a superset of ; otherwise, false.
+
+ The collection to compare to the current set. is null.
-
+
- Returns if this set contains no elements.
+ Determines whether the current set is a correct superset of a specified collection.
+
+ true if the object is a correct superset of ; otherwise, false.
+
+ The collection to compare to the current set. is null.
-
+
- The number of elements contained in this collection.
+ Determines whether the current set is a proper (strict) subset of a specified collection.
+
+ true if the current set is a correct subset of ; otherwise, false.
+
+ The collection to compare to the current set. is null.
-
+
- None of the objects based on DictionarySet are synchronized. Use the
- SyncRoot property instead.
+ Determines whether the current set overlaps with the specified collection.
+
+ true if the current set and share at least one common element; otherwise, false.
+
+ The collection to compare to the current set. is null.
-
+
- Returns an object that can be used to synchronize the Set between threads.
+ Determines whether the current set and the specified collection contain the same elements.
+
+ true if the current set is equal to ; otherwise, false.
+
+ The collection to compare to the current set. is null.
-
+
- Implements a Set based on a hash table. This will give the best lookup, add, and remove
- performance for very large data-sets, but iteration will occur in no particular order.
+ Adds an element to the current set and returns a value to indicate if the element was successfully added.
+
+ true if the element is added to the set; false if the element is already in the set.
+
+ The element to add to the set.
-
+
- Creates a new set instance based on a hash table.
+ Count the elements in the given collection and determine both the total
+ count and how many of the elements that are present in the current set.
-
+
- Creates a new set instance based on a hash table and
- initializes it based on a collection of elements.
+ Cast the given collection to an ISet<T> if possible. If not,
+ return a new set containing the items.
- A collection of elements that defines the initial set contents.
-
+
- Implements a Set that automatically changes from a list to a hash table
- when the size reaches a certain threshold. This is good if you are unsure about
- whether you data-set will be tiny or huge. Because this uses a dual implementation,
- iteration order is not guaranteed!
+ Unlink a node from the linked list by updating the node pointers in
+ its preceeding and subsequent node. Also update the _first and _last
+ pointers if necessary.
-
+
- Creates a new set instance based on either a list or a hash table, depending on which
- will be more efficient based on the data-set size.
+ Gets the number of elements contained in the .
+
+ The number of elements contained in the .
+
-
+
- Creates a new set instance based on either a list or a hash table, depending on which
- will be more efficient based on the data-set size, and
- initializes it based on a collection of elements.
+ Gets a value indicating whether the is read-only.
- A collection of elements that defines the initial set contents.
+
+ true if the is read-only; otherwise, false.
+
-
+
- Implements an immutable (read-only) Set wrapper.
+ Implements a read-only Set wrapper.
Although this is advertised as immutable, it really isn't. Anyone with access to the
- basisSet can still change the data-set. So GetHashCode() is not implemented
- for this Set, as is the case for all Set implementations in this library.
- This design decision was based on the efficiency of not having to Clone() the
- basisSet every time you wrap a mutable Set.
+ wrapped set can still change the set.
-
+
Constructs an immutable (read-only) Set wrapper.
The Set that is wrapped.
-
-
- Adds the specified element to this set if it is not already present.
-
- The object to add to the set.
- is the object was added, if it was already present.
-
-
-
- Adds all the elements in the specified collection to the set if they are not already present.
-
- A collection of objects to add to the set.
- is the set changed as a result of this operation, if not.
-
-
+
- Removes all objects from the set.
+ Returns an enumerator that iterates through a collection.
+
+ An object that can be used to iterate through the collection.
+
+ 2
-
+
- Returns if this set contains the specified element.
+ Returns an enumerator that iterates through the collection.
- The element to look for.
- if this set contains the specified element, otherwise.
+
+ A that can be used to iterate through the collection.
+
+ 1
-
+
- Returns if the set contains all the elements in the specified collection.
+ Adds an item to the .
- A collection of objects.
- if the set contains all the elements in the specified collection, otherwise.
+ The object to add to the .
+ is always thrown
-
+
- Removes the specified element from the set.
+ Removes all items from the .
- The element to be removed.
- if the set contained the specified element, otherwise.
+ is always thrown
-
+
- Remove all the specified elements from this set, if they exist in this set.
+ Determines whether the contains a specific value.
- A collection of elements to remove.
- if the set was modified as a result of this operation.
+
+ true if is found in the ; otherwise, false.
+
+ The object to locate in the .
-
+
- Retains only the elements in this set that are contained in the specified collection.
+ Copies the elements of the to an , starting at a particular index.
- Collection that defines the set of elements to be retained.
- if this set changed as a result of this operation.
+ The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing.The zero-based index in at which copying begins. is null. is less than 0. is multidimensional.-or-The number of elements in the source is greater than the available space from to the end of the destination .-or-Type cannot be cast automatically to the type of the destination .
-
+
- Copies the elements in the Set to an array. The type of array needs
- to be compatible with the objects in the Set, obviously.
+ Removes the first occurrence of a specific object from the .
- An array that will be the target of the copy operation.
- The zero-based index where copying will start.
+
+ true if was successfully removed from the ; otherwise, false. This method also returns false if is not found in the original .
+
+ The object to remove from the .
+ is always thrown
-
+
- Gets an enumerator for the elements in the Set.
+ Adds an element to the current set and returns a value to indicate if the element was successfully added.
- An IEnumerator over the elements in the Set.
+
+ true if the element is added to the set; false if the element is already in the set.
+
+ The element to add to the set.
+ is always thrown
-
+
- Returns a clone of the Set instance.
+ Modifies the current set so that it contains all elements that are present in both the current set and in the specified collection.
- A clone of this object.
+ The collection to compare to the current set. is null.
+ is always thrown
-
+
- Performs a "union" of the two sets, where all the elements
- in both sets are present. That is, the element is included if it is in either a or b.
- Neither this set nor the input set are modified during the operation. The return value
- is a Clone() of this set with the extra elements added in.
+ Modifies the current set so that it contains only elements that are also in a specified collection.
- A collection of elements.
- A new Set containing the union of this Set with the specified collection.
- Neither of the input objects is modified by the union.
+ The collection to compare to the current set. is null.
+ is always thrown
-
+
- Performs an "intersection" of the two sets, where only the elements
- that are present in both sets remain. That is, the element is included if it exists in
- both sets. The Intersect() operation does not modify the input sets. It returns
- a Clone() of this set with the appropriate elements removed.
+ Removes all elements in the specified collection from the current set.
- A set of elements.
- The intersection of this set with a.
+ The collection of items to remove from the set. is null.
+ is always thrown
-
+
- Performs a "minus" of set b from set a. This returns a set of all
- the elements in set a, removing the elements that are also in set b.
- The original sets are not modified during this operation. The result set is a Clone()
- of this Set containing the elements from the operation.
+ Modifies the current set so that it contains only elements that are present either in the current set or in the specified collection, but not both.
- A set of elements.
- A set containing the elements from this set with the elements in a removed.
+ The collection to compare to the current set. is null.
+ is always thrown
-
+
- Performs an "exclusive-or" of the two sets, keeping only the elements that
- are in one of the sets, but not in both. The original sets are not modified
- during this operation. The result set is a Clone() of this set containing
- the elements from the exclusive-or operation.
+ Determines whether a set is a subset of a specified collection.
- A set of elements.
- A set containing the result of a ^ b.
+
+ true if the current set is a subset of ; otherwise, false.
+
+ The collection to compare to the current set. is null.
-
+
- Returns if this set contains no elements.
+ Determines whether the current set is a superset of a specified collection.
+
+ true if the current set is a superset of ; otherwise, false.
+
+ The collection to compare to the current set. is null.
-
+
- The number of elements contained in this collection.
+ Determines whether the current set is a correct superset of a specified collection.
+
+ true if the object is a correct superset of ; otherwise, false.
+
+ The collection to compare to the current set. is null.
-
+
- Returns an object that can be used to synchronize use of the Set across threads.
+ Determines whether the current set is a property (strict) subset of a specified collection.
+
+ true if the current set is a correct subset of ; otherwise, false.
+
+ The collection to compare to the current set. is null.
-
+
- Returns an object that can be used to synchronize the Set between threads.
+ Determines whether the current set overlaps with the specified collection.
+
+ true if the current set and share at least one common element; otherwise, false.
+
+ The collection to compare to the current set. is null.
-
+
- Implements a Set based on a list. Performance is much better for very small lists
- than either HashedSet or SortedSet. However, performance degrades rapidly as
- the data-set gets bigger. Use a HybridSet instead if you are not sure your data-set
- will always remain very small. Iteration produces elements in the order they were added.
- However, element order is not guaranteed to be maintained by the various Set
- mathematical operators.
+ Determines whether the current set and the specified collection contain the same elements.
+
+ true if the current set is equal to ; otherwise, false.
+
+ The collection to compare to the current set. is null.
-
+
- Creates a new set instance based on a list.
+ Gets the number of elements contained in the .
+
+ The number of elements contained in the .
+
-
+
- Creates a new set instance based on a list and
- initializes it based on a collection of elements.
+ Gets a value indicating whether the is read-only.
- A collection of elements that defines the initial set contents.
+
+ True.
+
-
+
- Implements a set based on a sorted tree. This gives good performance for operations on very
- large data-sets, though not as good - asymptotically - as a .
- However, iteration occurs in order. Elements that you put into this type of collection must
- implement , and they must actually be comparable. You can't mix
- and values, for example.
+ Implements a thread-safe Set wrapper. The implementation is extremely conservative,
+ serializing critical sections to prevent possible deadlocks, and locking on everything.
+ The one exception is for enumeration, which is inherently not thread-safe. For this, you
+ have to lock the SyncRoot object for the duration of the enumeration.
-
+
- Creates a new set instance based on a sorted tree.
+ Constructs a thread-safe ISet wrapper.
+ The Set object that this object will wrap.
-
+
- Creates a new set instance based on a sorted tree.
+ Adds an item to the .
- The to use for sorting.
+ The object to add to the .The is read-only.
-
+
- Creates a new set instance based on a sorted tree and
- initializes it based on a collection of elements.
+ Removes all items from the .
- A collection of elements that defines the initial set contents.
+ The is read-only.
-
+
- Creates a new set instance based on a sorted tree and
- initializes it based on a collection of elements.
+ Determines whether the contains a specific value.
- A collection of elements that defines the initial set contents.
- The to use for sorting.
+
+ true if is found in the ; otherwise, false.
+
+ The object to locate in the .
-
+
- Implements a thread-safe wrapper.
+ Copies the elements of the to an , starting at a particular index.
-
- The implementation is extremely conservative, serializing critical sections
- to prevent possible deadlocks, and locking on everything. The one exception
- is for enumeration, which is inherently not thread-safe. For this, you have
- to the object for the duration
- of the enumeration.
-
+ The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing.The zero-based index in at which copying begins. is null. is less than 0. is multidimensional.-or-The number of elements in the source is greater than the available space from to the end of the destination .-or-Type cannot be cast automatically to the type of the destination .
-
+
- Constructs a thread-safe wrapper.
+ Removes the first occurrence of a specific object from the .
- The object that this object will wrap.
+
+ true if was successfully removed from the ; otherwise, false. This method also returns false if is not found in the original .
+
+ The object to remove from the .The is read-only.
-
+
- Adds the specified element to this set if it is not already present.
+ Modifies the current set so that it contains all elements that are present in either the current set or in the specified collection.
- The object to add to the set.
- is the object was added, if it was already present.
+ The collection to compare to the current set. is null.
-
+
- Adds all the elements in the specified collection to the set if they are not already present.
+ Modifies the current set so that it contains only elements that are also in a specified collection.
- A collection of objects to add to the set.
- is the set changed as a result of this operation, if not.
+ The collection to compare to the current set. is null.
-
+
- Removes all objects from the set.
+ Removes all elements in the specified collection from the current set.
+ The collection of items to remove from the set. is null.
-
+
- Returns if this set contains the specified element.
+ Modifies the current set so that it contains only elements that are present either in the current set or in the specified collection, but not both.
- The element to look for.
- if this set contains the specified element, otherwise.
+ The collection to compare to the current set. is null.
-
+
- Returns if the set contains all the elements in the specified collection.
+ Determines whether a set is a subset of a specified collection.
- A collection of objects.
- if the set contains all the elements in the specified collection, otherwise.
+
+ true if the current set is a subset of ; otherwise, false.
+
+ The collection to compare to the current set. is null.
-
+
- Removes the specified element from the set.
+ Determines whether the current set is a superset of a specified collection.
- The element to be removed.
- if the set contained the specified element, otherwise.
+
+ true if the current set is a superset of ; otherwise, false.
+
+ The collection to compare to the current set. is null.
-
+
- Remove all the specified elements from this set, if they exist in this set.
+ Determines whether the current set is a correct superset of a specified collection.
- A collection of elements to remove.
- if the set was modified as a result of this operation.
+
+ true if the object is a correct superset of ; otherwise, false.
+
+ The collection to compare to the current set. is null.
-
+
- Retains only the elements in this set that are contained in the specified collection.
+ Determines whether the current set is a property (strict) subset of a specified collection.
- Collection that defines the set of elements to be retained.
- if this set changed as a result of this operation.
+
+ true if the current set is a correct subset of ; otherwise, false.
+
+ The collection to compare to the current set. is null.
-
+
- Copies the elements in the set to an array. The type of array needs
- to be compatible with the objects in the set, obviously.
+ Determines whether the current set overlaps with the specified collection.
- An array that will be the target of the copy operation.
- The zero-based index where copying will start.
+
+ true if the current set and share at least one common element; otherwise, false.
+
+ The collection to compare to the current set. is null.
-
+
- Returns an enumerator that iterates through the set.
+ Determines whether the current set and the specified collection contain the same elements.
- An object that can be used to iterate through the set.
+ true if the current set is equal to ; otherwise, false.
-
- Enumeration is, by definition, not thread-safe. Use a on the
- to synchronize the entire enumeration process.
-
+ The collection to compare to the current set. is null.
-
+
- Returns a clone of this instance.
+ Adds an element to the current set and returns a value to indicate if the element was successfully added.
- A clone of this object.
+
+ true if the element is added to the set; false if the element is already in the set.
+
+ The element to add to the set.
-
+
- Returns if this set contains no elements.
+ Returns an enumerator that iterates through a collection. Enumeration is inherently not
+ thread-safe. Use a lock on the SyncRoot to synchronize the entire enumeration process.
+
+ An object that can be used to iterate through the collection.
+
+ 2
-
+
- The number of elements contained in this collection.
+ Returns an enumerator that iterates through the collection. Enumeration is inherently not
+ thread-safe. Use a lock on the SyncRoot to synchronize the entire enumeration process.
+
+ A that can be used to iterate through the collection.
+
+ 1
-
+
- Returns , indicating that this object is thread-safe. The exception to this
- is enumeration, which is inherently not thread-safe. Use the object to
- lock this object for the entire duration of the enumeration.
+ Gets the number of elements contained in the .
+
+ The number of elements contained in the .
+
-
+
- Returns an object that can be used to synchronize the set between threads.
+ Gets a value indicating whether the is read-only.
+
+ true if the is read-only; otherwise, false.
+
diff --git a/SharpLiteSrc/lib/NHibernate.dll b/SharpLiteSrc/lib/NHibernate.dll
index 20f0b15..3dcc337 100644
Binary files a/SharpLiteSrc/lib/NHibernate.dll and b/SharpLiteSrc/lib/NHibernate.dll differ
diff --git a/SharpLiteSrc/lib/NHibernate.xml b/SharpLiteSrc/lib/NHibernate.xml
index a64218c..0877793 100644
--- a/SharpLiteSrc/lib/NHibernate.xml
+++ b/SharpLiteSrc/lib/NHibernate.xml
@@ -37,7 +37,7 @@
Get the after-transaction-completion process, if any, for this action.
-
+
Create an action that will evict collection and entity regions based on queryspaces (table names).
@@ -453,7 +453,7 @@
- Implementation of ColumnNameCache.
+ Implementation of ColumnNameCache. Thread safe.
@@ -864,20 +864,6 @@
An for the specified role.
-
-
- Creates a new for an
- with bag semantics.
-
- The role the collection is in.
- The name of the property in the
- owner object containing the collection ID, or if it is
- the primary key.
- Is embedded in XML (not supported yet)
-
- A for the specified role.
-
-
Creates a new for an
@@ -894,19 +880,6 @@
A for the specified role.
-
-
- Creates a new for an .
-
- The role the collection is in.
- The name of the property in the
- owner object containing the collection ID, or if it is
- the primary key.
- Is embedded in XML (not supported yet)
-
- A for the specified role.
-
-
Creates a new for an
@@ -922,21 +895,7 @@
Is embedded in XML (not supported yet)
- A for the specified role.
-
-
-
-
- Creates a new for an
- with id-bag semantics.
-
- The role the collection is in.
- The name of the property in the
- owner object containing the collection ID, or if it is
- the primary key.
- Is embedded in XML (not supported yet)
-
- A for the specified role.
+ A for the specified role.
@@ -956,37 +915,9 @@
A for the specified role.
-
-
- Creates a new for an .
-
- The role the collection is in.
- The name of the property in the
- owner object containing the collection ID, or if it is
- the primary key.
- Is embedded in XML (not supported yet)
-
- A for the specified role.
-
-
-
-
- Creates a new for an
- that is sorted by an .
-
- The role the collection is in.
- The name of the property in the
- owner object containing the collection ID, or if it is
- the primary key.
- The that does the sorting.
- Is embedded in XML (not supported yet)
-
- A for the specified role.
-
-
- Creates a new for an .
+ Creates a new for an .
The type of elements in the collection.
The role the collection is in.
@@ -998,7 +929,7 @@
- Creates a new for a sorted .
+ Creates a new for a sorted .
The type of elements in the collection.
The role the collection is in.
@@ -1011,7 +942,7 @@
- Creates a new for an ordered .
+ Creates a new for an ordered .
The type of elements in the collection.
The role the collection is in.
@@ -1022,49 +953,6 @@
Is embedded in XML (not supported yet)
A for the specified role.
-
-
- Creates a new for an .
-
- The role the collection is in.
-
- The name of the property in the
- owner object containing the collection ID, or if it is
- the primary key.
- Is embedded in XML (not supported yet)
-
- A for the specified role.
-
-
-
-
- Creates a new for an
- that maintains insertion order of elements.
-
- The role the collection is in.
- The name of the property in the
- owner object containing the collection ID, or if it is
- the primary key.
- Is embedded in XML (not supported yet)
-
- A for the specified role.
-
-
-
-
- Creates a new for an
- that is sorted by an .
-
- The role the collection is in.
- The name of the property in the
- owner object containing the collection ID, or if it is
- the primary key.
- The that does the sorting.
- Is embedded in XML (not supported yet)
-
- A for the specified role.
-
-
Creates a new for an
@@ -1079,7 +967,7 @@
Is embedded in XML (not supported yet)
- A for the specified role.
+ A for the specified role.
@@ -1772,7 +1660,7 @@
Gets the cache region name.
-
+
Initializes a new instance of the class.
@@ -1780,6 +1668,7 @@
The query string.
The query parameters.
The filters.
+ The result transformer; should be null if data is not transformed before being cached.
@@ -6314,6 +6203,13 @@
Enable ordering of insert statements for the purpose of more effecient batching.
+
+
+ If this setting is set to false, exceptions in IInterceptor.BeforeTransactionCompletion bubble to the caller of ITransaction.Commit and abort the commit.
+ If this setting is set to true, exceptions in IInterceptor.BeforeTransactionCompletion are ignored and the commit is performed.
+ The default setting is false.
+
+
Issue warnings to user when any obsolete property names are used.
@@ -6793,14 +6689,6 @@
The type of the element the bag should hold.
The underlying collection used is an
-
-
- An unordered, unkeyed collection that can contain the same element
- multiple times. The .NET collections API has no Bag class.
- Most developers seem to use s to represent bag semantics,
- so NHibernate follows this practice.
-
-
Base class for implementing .
@@ -6923,9 +6811,7 @@
Reads the row from the .
- This method should be prepared to handle duplicate elements caused by fetching multiple collections,
- or should be updated
- to return for the collection type.
+ This method should be prepared to handle duplicate elements caused by fetching multiple collections.
The IDataReader that contains the value of the Identifier
The persister for this Collection.
@@ -6990,7 +6876,7 @@
The for this Collection.
by default since most collections can determine which rows need to be
- individually updated/inserted/deleted. Currently only 's for many-to-many
+ individually updated/inserted/deleted. Currently only 's for many-to-many
need to be recreated.
@@ -7233,7 +7119,7 @@
The for this Collection.
by default since most collections can determine which rows need to be
- individually updated/inserted/deleted. Currently only 's for many-to-many
+ individually updated/inserted/deleted. Currently only 's for many-to-many
need to be recreated.
@@ -7420,20 +7306,8 @@
-
-
- Counts the number of times that the occurs
- in the .
-
- The element to find in the list.
- The to search.
- The that can determine equality.
- The entity mode.
-
- The number of occurrences of the element in the list.
-
-
-
+
+
Initializes this PersistentBag from the cached values.
@@ -7441,7 +7315,7 @@
The disassembled PersistentBag.
The owner object.
-
+
Gets a indicating if this PersistentBag needs to be recreated
in the database.
@@ -7454,9 +7328,22 @@
many-to-many so it is just recreated.
+
+
+ Counts the number of times that the occurs
+ in the .
+
+ The element to find in the list.
+ The to search.
+ The that can determine equality.
+ The entity mode.
+
+ The number of occurrences of the element in the list.
+
+
- Implements "bag" semantics more efficiently than by adding
+ Implements "bag" semantics more efficiently than by adding
a synthetic identifier column to the table.
@@ -7471,24 +7358,7 @@
-
-
- Implements "bag" semantics more efficiently than a regular
- by adding a synthetic identifier column to the table.
-
-
-
- The identifier is unique for all rows in the table, allowing very efficient
- updates and deletes. The value of the identifier is never exposed to the
- application.
-
-
- PersistentIdentifierBags may not be used for a many-to-one association.
- Furthermore, there is no reason to use inverse="true".
-
-
-
-
+
Initializes this Bag from the cached values.
@@ -7503,34 +7373,26 @@
The type of the element the list should hold.
The underlying collection used is a
-
-
- A persistent wrapper for an
-
-
- The underlying collection used in an .
-
-
-
+
- Initializes an instance of the
+ Initializes an instance of the
in the .
The the list is in.
-
+
- Initializes an instance of the
+ Initializes an instance of the
that wraps an existing in the .
The the list is in.
The to wrap.
-
+
- Initializes this PersistentList from the cached values.
+ Initializes this PersistentGenericList from the cached values.
- The CollectionPersister to use to reassemble the PersistentList.
+ The CollectionPersister to use to reassemble the PersistentGenericList.
The disassembled PersistentList.
The owner object.
@@ -7542,63 +7404,38 @@
The type of the keys in the IDictionary.
The type of the elements in the IDictionary.
-
-
- A persistent wrapper for a . Underlying collection
- is a .
-
-
-
+
- Construct an uninitialized PersistentMap.
+ Construct an uninitialized PersistentGenericMap.
- The ISession the PersistentMap should be a part of.
+ The ISession the PersistentGenericMap should be a part of.
-
+
- Construct an initialized PersistentMap based off the values from the existing IDictionary.
+ Construct an initialized PersistentGenericMap based off the values from the existing IDictionary.
- The ISession the PersistentMap should be a part of.
+ The ISession the PersistentGenericMap should be a part of.
The IDictionary that contains the initial values.
-
+
- Initializes this PersistentMap from the cached values.
+ Initializes this PersistentGenericMap from the cached values.
- The CollectionPersister to use to reassemble the PersistentMap.
- The disassembled PersistentMap.
+ The CollectionPersister to use to reassemble the PersistentGenericMap.
+ The disassembled PersistentGenericMap.
The owner object.
- .NET has no design equivalent for Java's Set so we are going to use the
- Iesi.Collections library. This class is internal to NHibernate and shouldn't
- be used by user code.
+ A persistent wrapper for an .
-
- The code for the Iesi.Collections library was taken from the article
- Add Support for "Set" Collections
- to .NET that was written by JasonSmith.
-
-
+
- .NET has no design equivalent for Java's Set so we are going to use the
- Iesi.Collections library. This class is internal to NHibernate and shouldn't
- be used by user code.
+ The that NHibernate is wrapping.
-
- The code for the Iesi.Collections library was taken from the article
- Add Support for "Set" Collections
- to .NET that was written by JasonSmith.
-
-
-
- The that NHibernate is wrapping.
-
-
-
+
A temporary list that holds the objects while the PersistentSet is being
populated from the database.
@@ -7609,14 +7446,14 @@
process.
-
+
Constructor matching super.
Instantiates a lazy set (the underlying set is un-initialized).
The session to which this set will belong.
-
+
Instantiates a non-lazy set (the underlying set is constructed
from the incoming set reference).
@@ -7624,7 +7461,7 @@
The session to which this set will belong.
The underlying set data.
-
+
Initializes this PersistentSet from the cached values.
@@ -7632,13 +7469,13 @@
The disassembled PersistentSet.
The owner object.
-
+
Set up the temporary List that will be used in the EndRead()
to fully create the set.
-
+
Takes the contents stored in the temporary list created during BeginRead()
that was populated during ReadFrom() and write it to the underlying
@@ -8010,13 +7847,6 @@
The key is the session factory and the value is the bound session.
-
-
- Provides a current session
- for each System.Web.HttpContext.
- Works only with Web Applications.
-
-
This class allows access to the HttpContext without referring to HttpContext at compile time.
@@ -8645,11 +8475,6 @@
A single-column projection that may be aliased
-
-
- An "enhanced" Projection for a query.
-
-
Render the SQL Fragment.
@@ -8686,21 +8511,6 @@
-
-
- Get the SQL select clause column aliases for a particular user-visible alias
-
-
-
-
-
-
- Get the SQL select clause column aliases for a particular user-visible alias
-
-
-
-
-
Gets the typed values for parameters in this projection
@@ -8709,22 +8519,7 @@
The criteria query.
-
-
- Get the user-visible aliases for this projection (ie. the ones that will be passed to the ResultTransformer)
-
-
-
-
- Does this projection specify grouping attributes?
-
-
-
-
- Does this projection specify aggregate attributes?
-
-
-
+
Get the SQL column aliases used by this projection for the columns it writes for inclusion into the
SELECT clause . NHibernate always uses column aliases
@@ -8736,7 +8531,7 @@
The overall criteria query instance.
The columns aliases.
-
+
Get the SQL column aliases used by this projection for the columns it writes for inclusion into the
SELECT clause () for a particular criteria-level alias.
@@ -8747,6 +8542,21 @@
The overall criteria query instance.
The columns aliases.
+
+
+ Get the user-visible aliases for this projection (ie. the ones that will be passed to the ResultTransformer)
+
+
+
+
+ Does this projection specify grouping attributes?
+
+
+
+
+ Does this projection specify aggregate attributes?
+
+
Gets the typed values for parameters in this projection
@@ -10700,6 +10510,12 @@
Note: throws an exception outside of a QueryOver expression
+
+
+ Project SQL function date()
+ Note: throws an exception outside of a QueryOver expression
+
+
Project SQL function sqrt()
@@ -12273,7 +12089,7 @@
- Suclasses register a typename for the given type code. $l in the
+ Subclasses register a typename for the given type code. $l in the
typename will be replaced by the column length (if appropriate).
The typecode
@@ -12611,17 +12427,19 @@
- Add a LIMIT clause to the given SQL SELECT.
+ Attempts to add a LIMIT clause to the given SQL SELECT.
Expects any database-specific offset and limit adjustments to have already been performed (ex. UseMaxForLimit, OffsetStartsAtOne).
The to base the limit query off.
Offset of the first row to be returned by the query. This may be represented as a parameter, a string literal, or a null value if no limit is requested. This should have already been adjusted to account for OffsetStartsAtOne.
Maximum number of rows to be returned by the query. This may be represented as a parameter, a string literal, or a null value if no offset is requested. This should have already been adjusted to account for UseMaxForLimit.
- A new that contains the LIMIT clause.
+ A new that contains the LIMIT clause. Returns null
+ if represents a SQL statement to which a limit clause cannot be added,
+ for example when the query string is custom SQL invoking a stored procedure.
- Generates a string to limit the result set to a number of maximum results with a specified offset into the results.
+ Attempts to generate a string to limit the result set to a number of maximum results with a specified offset into the results.
Expects any database-specific offset and limit adjustments to have already been performed (ex. UseMaxForLimit, OffsetStartsAtOne).
Performs error checking based on the various dialect limit support options. If both parameters and fixed valeus are
specified, this will use the parameter option if possible. Otherwise, it will fall back to a fixed string.
@@ -13390,7 +13208,7 @@
-
connection.driver_class
-
+
@@ -13546,7 +13364,7 @@
Whether this dialect have an Identity clause added to the data type or a
- completely seperate identity data type
+ completely separate identity data type
@@ -13761,6 +13579,38 @@
+
+
+ Attempts to add a LIMIT clause to the given SQL SELECT.
+ Expects any database-specific offset and limit adjustments to have already been performed (ex. UseMaxForLimit, OffsetStartsAtOne).
+
+ The to base the limit query off.
+ Offset of the first row to be returned by the query. This may be represented as a parameter, a string literal, or a null value if no limit is requested. This should have already been adjusted to account for OffsetStartsAtOne.
+ Maximum number of rows to be returned by the query. This may be represented as a parameter, a string literal, or a null value if no offset is requested. This should have already been adjusted to account for UseMaxForLimit.
+
+ A new that contains the LIMIT clause. Returns null
+ if represents a SQL statement to which a limit clause cannot be added,
+ for example when the query string is custom SQL invoking a stored procedure.
+
+
+
+
+ Does this Dialect have some kind of LIMIT syntax?
+
+
+ False, unless overridden.
+
+
+
+
+ Can parameters be used for a statement containing a LIMIT?
+
+
+
+
+ Does this Dialect support an offset?
+
+
Use a parameter with ParameterDirection.Output
@@ -13871,46 +13721,6 @@
-
-
- Identify the columns for the ROW_NUMBER OVER(ORDER BY ...) expression.
-
-
-
-
-
- This method translates aliased columns (as appear in the SELECT list) to straight column names, to be included in the
- ROW_NUMBER() OVER(ORDER BY ...) expression. For example, datapoint0_.xval as xval4_ to
- datapoint0_.xval.
-
-
-
-
- For a DISTINCT query, identify the columns for the ROW_NUMBER() OVER(ORDER BY ...) expression.
-
-
-
-
-
- For a paged DISTINCT query, the columns on which ordering will be performed are returned by a sub-query. Therefore the
- columns in the ROW_NUMBER() OVER(ORDER BY ...) expression need to use the aliased column name from the subquery,
- prefixed by the subquery alias, q_.
-
-
-
-
- Indicates whether the string fragment contains matching parenthesis
-
- the statement to evaluate
- true if the statment contains no parenthesis or an equal number of
- opening and closing parenthesis;otherwise false
-
-
-
- Perhaps SqlString should have these types of method on it...
-
-
-
An SQL dialect compatible with Microsoft SQL Server 7.
@@ -13978,12 +13788,21 @@
- Suclasses register a typename for the given type code, to be used in CAST()
+ Subclasses register a typename for the given type code, to be used in CAST()
statements.
The typecode
The database type name
+
+
+ Subclasses register a typename for the given type code, to be used in CAST()
+ statements.
+
+ The typecode
+
+ The database type name
+
Get the name of the database type appropriate for casting operations
@@ -14689,11 +14508,33 @@
-
+
- The SybaseSQLAnywhereDriver Driver provides a database driver for Sybase SQL Anywhere 10 and above
+ Execute the given for each command of the resultset.
+
+ The action to perform where the first parameter is the and the second parameter is the parameters offset of the .
+
+
+
+ Datareader wrapper with the same life cycle of its command (through the batcher)
+
+
+ NHibernate driver for the Community CsharpSqlite data provider.
+
+ Author: Nikolaos Tountas
+
+
+
+
+ In order to use this Driver you must have the Community.CsharpSqlite.dll and Community.CsharpSqlite.SQLiteClient assemblies referenced.
+
+
+ Please check http://code.google.com/p/csharp-sqlite/ for more information regarding csharp-sqlite.
+
+
+
Base class for the implementation of IDriver
@@ -14922,54 +14763,6 @@
Command type name.
-
-
- Initializes a new instance of the class.
-
-
- Thrown when the iAnywhere.Data.SQLAnywhere assembly is not and can not be loaded.
-
-
-
-
- The SybaseAsaClientDriver driver provides a database driver for Adaptive Server Anywhere 9.0.
-
-
-
-
- Initializes a new instance of the class.
-
-
- Thrown when the iAnywhere.Data.AsaClient assembly is not and can not be loaded.
-
-
-
-
- Execute the given for each command of the resultset.
-
- The action to perform where the first parameter is the and the second parameter is the parameters offset of the .
-
-
-
- Datareader wrapper with the same life cycle of its command (through the batcher)
-
-
-
-
- NHibernate driver for the Community CsharpSqlite data provider.
-
- Author: Nikolaos Tountas
-
-
-
-
- In order to use this Driver you must have the Community.CsharpSqlite.dll and Community.CsharpSqlite.SQLiteClient assemblies referenced.
-
-
- Please check http://code.google.com/p/csharp-sqlite/ for more information regarding csharp-sqlite.
-
-
-
Initializes a new instance of .
@@ -15004,31 +14797,56 @@
Thrown when the IBM.Data.DB2 assembly can not be loaded.
-
+
- A NHibernate Driver for using the Firebird data provider located in
- FirebirdSql.Data.FirebirdClient assembly.
+ Provides a database driver for dotConnect for MySQL by DevArt.
+
+
+ In order to use this driver you must have the assembly Devart.Data.MySql.dll available for
+ NHibernate to load, including its dependencies (Devart.Data.dll).
+
+
+ Please check the product's website
+ for any updates and/or documentation regarding dotConnect for MySQL.
+
+
-
+
- Initializes a new instance of the class.
+ Initializes a new instance of the class.
- Thrown when the FirebirdSql.Data.Firebird assembly can not be loaded.
+ Thrown when the Devart.Data.MySql assembly can not be loaded.
-
+
- A NHibernate Driver for using the FirebirdSql.Data.Firebird DataProvider.
+ Devart.Data.MySql uses named parameters in the sql.
+ - MySql uses @ in the sql.
+
+
+
-
+
- Initializes a new instance of the class.
+ Devart.Data.MySql use the @ to locate parameters in sql.
+
+ @ is used to locate parameters in sql.
+
+
+
+ A NHibernate Driver for using the Firebird data provider located in
+ FirebirdSql.Data.FirebirdClient assembly.
+
+
+
+
+ Initializes a new instance of the class.
- Thrown when the FirebirdSql.Data.FirebirdClient assembly can not be loaded.
+ Thrown when the FirebirdSql.Data.Firebird assembly can not be loaded.
@@ -15793,6 +15611,34 @@
ODP.NET doesn't support it.
+
+
+ A NHibernate Driver for using the Oracle.ManagedDataAccess DataProvider
+
+
+
+
+ Initializes a new instance of .
+
+
+ Thrown when the Oracle.ManagedDataAccess assembly can not be loaded.
+
+
+
+
+ This adds logic to ensure that a DbType.Boolean parameter is not created since
+ ODP.NET doesn't support it.
+
+
+
+
+
+
+
+
+
+
+
A NHibernate Driver for using the SqlClient DataProvider
@@ -15883,32 +15729,7 @@
- Initializes a new instance of .
-
-
- Thrown when the SQLite.NET assembly can not be loaded.
-
-
-
-
- NHibernate driver for the SQLite.NET data provider.
-
- Author: Ioan Bizau
-
-
-
-
- In order to use this Driver you must have the SQLite.NET.dll Assembly available for NHibernate to load it.
- You must also have the SQLite.dll and SQLite3.dll libraries.
-
-
- Please check http://www.sqlite.org/ for more information regarding SQLite.
-
-
-
-
-
- Initializes a new instance of .
+ Initializes a new instance of .
Thrown when the SQLite.NET assembly can not be loaded.
@@ -15960,6 +15781,19 @@
created for Yukon because it is supposed to support it.
+
+
+ The SybaseAsaClientDriver driver provides a database driver for Adaptive Server Anywhere 9.0.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ Thrown when the iAnywhere.Data.AsaClient assembly is not and can not be loaded.
+
+
This provides a driver for Sybase ASE 15 using the ADO.NET driver.
@@ -16010,6 +15844,19 @@
Thrown when the iAnywhere.Data.SQLAnywhere.v4.0 assembly is not and can not be loaded.
+
+
+ The SybaseSQLAnywhereDriver Driver provides a database driver for Sybase SQL Anywhere 10 and above
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ Thrown when the iAnywhere.Data.SQLAnywhere assembly is not and can not be loaded.
+
+
Represents state associated with the processing of a given
@@ -16398,7 +16245,7 @@
-
- makes sure the work to be done is performed in a seperate, distinct transaction
+ makes sure the work to be done is performed in a separate, distinct transaction
-
@@ -16410,7 +16257,7 @@
Ensures that all processing actually performed by the given work will
- occur on a seperate transaction.
+ occur on a separate transaction.
The work to be performed.
The session from which this request is originating.
@@ -16459,7 +16306,7 @@
Was the transaction successful.
-
+
Check whether the given tables/query-spaces are to be executed against
given the currently queued actions.
@@ -16565,7 +16412,7 @@
if necessary
-
+
Get a batch of uninitialized collection keys for a given role
@@ -16575,7 +16422,7 @@
The entity mode.
an array of collection keys, of length batchSize (padded with nulls)
-
+
Get a batch of unloaded identifiers for this class, using a slightly
complex algorithm that tries to grab keys registered immediately after
@@ -16584,7 +16431,6 @@
The persister for the entities being loaded.
The identifier of the entity currently demanding load.
The maximum number of keys to return
- The entity mode.
an array of identifiers, of length batchSize (possibly padded with nulls)
@@ -16818,9 +16664,6 @@
-
-
-
@@ -18111,6 +17954,11 @@
Strongly-typed version of
+
+
+ Strongly-typed version of
+
+
Strongly-typed version of
@@ -18124,11 +17972,24 @@
+
+
+ Execute an Iterate() query
+
+
+
+
+
Strongly-typed version of
+
+
+ Strongly-typed version of
+
+
Execute a filter
@@ -18228,6 +18089,9 @@
Execute a HQL update or delete query
+
+ Execute a HQL update or delete query
+
System time before the start of the transaction
@@ -19016,6 +18880,7 @@
- Deletes, in the order they were performed
+ The session being flushed
@@ -19273,7 +19138,7 @@
Thus, this is a hook for HEM to affect this behavior.
-
+
We encountered a delete request on a transient instance.
@@ -19290,7 +19155,7 @@
A cache of already visited transient entities (to avoid infinite recursion).
-
+
Perform the entity deletion. Well, as with most operations, does not
really perform it; just schedules an action/execution with the
@@ -20060,7 +19925,7 @@
transaction. (Long transactions might span several database transactions.)
- The main function of the ISession is to offer create, find and delete operations
+ The main function of the ISession is to offer create, find, update, and delete operations
for instances of mapped entity classes. Instances may exist in one of two states:
- transient: not associated with any ISession
@@ -20120,7 +19985,7 @@
Must be called at the end of a unit of work, before commiting the transaction and closing
- the session (Transaction.Commit() calls this method). Flushing if the process
+ the session (Transaction.Commit() calls this method). Flushing is the process
of synchronising the underlying persistent store with persistable state held in memory.
@@ -20374,6 +20239,18 @@
association is mapped with cascade="save-update".
+
+
+ Persist the given transient instance, using the given identifier.
+
+ The Entity name.
+ a transient instance of a persistent class
+ An unused valid identifier
+
+ This operation cascades to associated instances if the
+ association is mapped with cascade="save-update".
+
+
Either Save() or Update() the given instance, depending upon the value of
@@ -20400,6 +20277,19 @@
with cascade="save-update".
+
+
+ Either Save() or Update() the given instance, depending upon the value of
+ its identifier property.
+
+
+ By default the instance is always saved. This behaviour may be adjusted by specifying
+ an unsaved-value attribute of the identifier property mapping
+
+ The name of the entity
+ A transient instance containing new or updated state
+ Identifier of persistent instance
+
Update the persistent instance with the identifier of the given transient instance.
@@ -20434,6 +20324,19 @@
if the association is mapped with cascade="save-update".
+
+
+ Update the persistent instance associated with the given identifier.
+
+ The Entity name.
+ a detached instance containing updated state
+ Identifier of persistent instance
+
+ If there is a persistent instance with the same identifier,
+ an exception is thrown. This operation cascades to associated instances
+ if the association is mapped with cascade="save-update".
+
+
Copy the state of the given object onto the persistent object with the same
@@ -20511,31 +20414,6 @@
Name of the entity.
a transient instance to be made persistent
-
-
- Copy the state of the given object onto the persistent object with the same
- identifier. If there is no persistent instance currently associated with
- the session, it will be loaded. Return the persistent instance. If the
- given instance is unsaved or does not exist in the database, save it and
- return it as a newly persistent instance. Otherwise, the given instance
- does not become associated with the session.
-
- a transient instance with state to be copied
- an updated persistent instance
-
-
-
- Copy the state of the given object onto the persistent object with the
- given identifier. If there is no persistent instance currently associated
- with the session, it will be loaded. Return the persistent instance. If
- there is no database row with the given identifier, save the given instance
- and return it as a newly persistent instance. Otherwise, the given instance
- does not become associated with the session.
-
- a persistent or transient instance with state to be copied
- the identifier of the instance to copy to
- an updated persistent instance
-
Remove a persistent instance from the datastore.
@@ -20991,10 +20869,7 @@
Cascade refresh an entity instance
-
- Cascade copy an entity instance
-
-
+
Cascade delete an entity instance
@@ -21551,7 +21426,7 @@
all append invocations on the buf should go through this Output instance variable.
The value of this variable may be temporarily substitued by sql function processing code
to catch generated arguments.
- This is because sql function templates need arguments as seperate string chunks
+ This is because sql function templates need arguments as separate string chunks
that will be assembled into the target dialect-specific function call.
@@ -21586,361 +21461,6 @@
The default SQL writer.
-
-
- Abstract superclass of object loading (and querying) strategies.
-
-
-
- This class implements useful common functionality that concrete loaders would delegate to.
- It is not intended that this functionality would be directly accessed by client code (Hence,
- all methods of this class are declared protected or private.) This class relies heavily upon the
- interface, which is the contract between this class and
- s that may be loaded by it.
-
-
- The present implementation is able to load any number of columns of entities and at most
- one collection role per query.
-
-
-
-
-
-
- What lock mode does this load entities with?
-
- A Collection of lock modes specified dynamically via the Query Interface
-
-
-
-
- Append FOR UPDATE OF clause, if necessary. This
- empty superclass implementation merely returns its first
- argument.
-
-
-
-
- Does this query return objects that might be already cached by
- the session, whose lock mode may need upgrading.
-
-
-
-
-
- Modify the SQL, adding lock hints and comments, if necessary
-
-
-
-
- Execute an SQL query and attempt to instantiate instances of the class mapped by the given
- persister from each row of the DataReader. If an object is supplied, will attempt to
- initialize that object. If a collection is supplied, attempt to initialize that collection.
-
-
-
-
- Loads a single row from the result set. This is the processing used from the
- ScrollableResults where no collection fetches were encountered.
-
- The result set from which to do the load.
- The session from which the request originated.
- The query parameters specified by the user.
- Should proxies be generated
- The loaded "row".
-
-
-
-
- Read any collection elements contained in a single row of the result set
-
-
-
-
- Get the actual object that is returned in the user-visible result list.
-
-
- This empty implementation merely returns its first argument. This is
- overridden by some subclasses.
-
-
-
-
- For missing objects associated by one-to-one with another object in the
- result set, register the fact that the the object is missing with the
- session.
-
-
-
-
- Read one collection element from the current row of the ADO.NET result set
-
-
-
-
- If this is a collection initializer, we need to tell the session that a collection
- is being initilized, to account for the possibility of the collection having
- no elements (hence no rows in the result set).
-
-
-
-
- Read a row of EntityKeys from the IDataReader into the given array.
-
-
- Warning: this method is side-effecty. If an id is given, don't bother going
- to the IDataReader
-
-
-
-
- Check the version of the object in the IDataReader against
- the object version in the session cache, throwing an exception
- if the version numbers are different.
-
-
-
-
-
- Resolve any ids for currently loaded objects, duplications within the IDataReader,
- etc. Instanciate empty objects to be initialized from the IDataReader. Return an
- array of objects (a row of results) and an array of booleans (by side-effect) that determine
- wheter the corresponding object should be initialized
-
-
-
-
- The entity instance is already in the session cache
-
-
-
-
- The entity instance is not in the session cache
-
-
-
-
- Hydrate the state of an object from the SQL IDataReader, into
- an array of "hydrated" values (do not resolve associations yet),
- and pass the hydrated state to the session.
-
-
-
-
- Determine the concrete class of an instance for the IDataReader
-
-
-
-
- Advance the cursor to the first required row of the IDataReader
-
-
-
-
- Should we pre-process the SQL string, adding a dialect-specific
- LIMIT clause.
-
-
-
-
-
-
-
- Performs dialect-specific manipulations on the offset value before returning it.
- This method is applicable for use in limit statements only.
-
-
-
-
- Performs dialect-specific manipulations on the limit value before returning it.
- This method is applicable for use in limit statements only.
-
-
-
-
- Obtain an IDbCommand with all parameters pre-bound. Bind positional parameters,
- named parameters, and limit parameters.
-
-
- Creates an IDbCommand object and populates it with the values necessary to execute it against the
- database to Load an Entity.
-
- The to use for the IDbCommand.
- TODO: find out where this is used...
- The SessionImpl this Command is being prepared in.
- A CommandWrapper wrapping an IDbCommand that is ready to be executed.
-
-
-
- Some dialect-specific LIMIT clauses require the maximium last row number
- (aka, first_row_number + total_row_count), while others require the maximum
- returned row count (the total maximum number of rows to return).
-
- The selection criteria
- The dialect
- The appropriate value to bind into the limit clause.
-
-
-
- Fetch a IDbCommand, call SetMaxRows and then execute it,
- advance to the first result and return an SQL IDataReader
-
- The to execute.
- The to apply to the and .
- true if result types need to be auto-discovered by the loader; false otherwise.
- The to load in.
-
- An IDataReader advanced to the first record in RowSelection.
-
-
-
- Called by subclasses that load entities
-
-
-
-
- Called by subclasses that batch load entities
-
-
-
-
- Called by subclasses that load collections
-
-
-
-
- Called by wrappers that batch initialize collections
-
-
-
-
- Called by subclasses that batch initialize collections
-
-
-
-
- Return the query results, using the query cache, called
- by subclasses that implement cacheable queries
-
-
-
-
-
-
-
-
-
- Actually execute a query, ignoring the query cache
-
-
-
-
-
-
-
- Calculate and cache select-clause suffixes. Must be
- called by subclasses after instantiation.
-
-
-
-
- An array indicating whether the entities have eager property fetching
- enabled.
-
- Eager property fetching indicators.
-
-
-
- An array of indexes of the entity that owns a one-to-one association
- to the entity at the given index (-1 if there is no "owner")
-
-
- The indexes contained here are relative to the result of .
-
-
-
-
- An array of the owner types corresponding to the
- returns. Indices indicating no owner would be null here.
-
-
-
-
- Get the index of the entity that owns the collection, or -1
- if there is no owner in the query results (i.e. in the case of a
- collection initializer) or no collection.
-
-
-
-
- Return false is this loader is a batch entity loader
-
-
-
-
- Get the result set descriptor
-
-
-
-
- The SqlString to be called; implemented by all subclasses
-
-
-
- The setter was added so that class inheriting from Loader could write a
- value using the Property instead of directly to the field.
-
-
- The scope is protected internal because the needs to
- be able to get the SqlString of the when
- it is parsing a subquery.
-
-
-
-
-
- An array of persisters of entity classes contained in each row of results;
- implemented by all subclasses
-
-
- The setter was added so that classes inheriting from Loader could write a
- value using the Property instead of directly to the field.
-
-
-
-
- An (optional) persister for a collection to be initialized; only collection loaders
- return a non-null value
-
-
-
-
- Get the SQL table aliases of entities whose
- associations are subselect-loadable, returning
- null if this loader does not support subselect
- loading
-
-
-
-
- Identifies the query for statistics reporting, if null,
- no statistics will be reported
-
-
-
-
- Utility method that generates 0_, 1_ suffixes. Subclasses don't
- necessarily need to use this algorithm, but it is intended that
- they will in most cases.
-
-
-
-
-
-
- a collection of lock modes specified dynamically via the Query interface
-
-
Base class for nodes dealing 'is null' and 'is not null' operators.
@@ -23020,12 +22540,6 @@
Ported by: Steve Strong
-
-
- Facade for generation of
- and instances.
-
-
Facade for generation of
@@ -23044,16 +22558,11 @@
The session factory
An appropriate translator.
-
+
Construct a instance
capable of translating a Linq expression.
-
- The query-identifier (used in collection).
- This is typically the same as the queryString parameter except for the case of
- split polymorphic queries which result in multiple physical sql queries.
-
The query expression to be translated
@@ -23193,11 +22702,6 @@
Indicates if the token could be an identifier.
-
-
- Gets or Sets the type of the token, remembering the previous type on Sets.
-
-
Returns the previous token type.
@@ -23488,386 +22992,6 @@
The collection type to be checked.
The Type of the elements of the collection.
-
-
- Generates translators which uses the older hand-written parser to perform the translation.
-
-
-
-
- Parses the hibernate query into its constituent clauses.
-
-
-
-
- A parser is a state machine that accepts a string of tokens,
- bounded by start() and end() and modifies a QueryTranslator. Parsers
- are NOT intended to be threadsafe. They SHOULD be reuseable
- for more than one token stream.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Parses the from clause of a hibernate query, looking for tables and
- aliases for the SQL query.
-
-
-
-
-
-
-
- FromPathExpressionParser
-
-
-
-
- Parses an expression of the form foo.bar.baz and builds up an expression
- involving two less table joins than there are path components.
-
-
-
-
-
-
-
-
-
- NOTE: we avoid joining to the next table if the named property is just the foreign key value
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Used to hold column type in nested functions.
-
-
-
-
- Parses the GROUP BY clause of an aggregate query
-
-
-
-
- Parses the having clause of a hibernate query and translates it to an
- SQL having clause.
-
-
-
- Parses the where clause of a hibernate query and translates it to an
- SQL where clause.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Parses the ORDER BY clause of a query
-
-
-
-
-
-
- HQL lexical analyzer (not really a parser)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- An instance of QueryTranslator translates a Hibernate query string to SQL.
-
-
-
- Construct a query translator
-
- A unique identifier for the query of which this
- translation is part; typically this is the original, user-supplied query string.
-
-
- The "preprocessed" query string; at the very least
- already processed by {@link org.hibernate.hql.QuerySplitter}.
-
- Any enabled filters.
- The session factory.
-
-
-
- Construct a query translator
-
-
-
-
- Compile a subquery
-
-
-
-
-
- Compile a "normal" query. This method may be called multiple
- times. Subsequent invocations are no-ops.
-
-
-
-
- Compile a filter. This method may be called multiple
- times. Subsequent invocations are no-ops.
-
-
-
-
- Compile the query (generate the SQL).
-
-
-
-
- WARNING: side-effecty
-
-
-
-
- Extract the complete clause of function.
-
- The list of tokens
- The index of the list that represent the founded function.
- String trepresentation of each token.
- Each token can be string or SqlString
-
-
- Used for collection filters
-
-
-
-
-
-
- Persisters for the return values of a List style query
-
-
- The Persisters stored by QueryTranslator have to be . The
- setter will attempt to cast the ILoadable array passed in into an
- IQueryable array.
-
-
-
-
- Types of the return values of an Enumerate() style query.
- Return an array of s.
-
-
-
-
-
-
-
- Is this query called by Scroll() or Iterate()?
-
- true if it is, false if it is called by find() or list()
-
-
-
-
-
-
-
-
-
- Parsers the select clause of a hibernate query, looking
- for a table (well, really class) alias.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Wraps SessionFactoryImpl, adding more lookup behaviors and encapsulating some of the error handling.
@@ -25200,7 +24324,7 @@
System.Int32
- The hi value MUST be fetched in a seperate transaction to the ISession
+ The hi value MUST be fetched in a separate transaction to the ISession
transaction so the generator must be able to obtain a new connection and commit it.
Hence this implementation may not be used when the user is supplying connections.
@@ -25299,7 +24423,7 @@
schema are optional.
- The hi value MUST be fecthed in a seperate transaction to the ISession
+ The hi value MUST be fecthed in a separate transaction to the ISession
transaction so the generator must be able to obtain a new connection and
commit it. Hence this implementation may not be used when the user is supplying
connections. In that case a would be a
@@ -25532,7 +24656,7 @@
The name of the parameter
The non-null parameter value
-
+
Bind multiple values to a named query parameter. This is useful for binding a list
of values to an expression such as foo.bar in (:value_list)
@@ -25541,7 +24665,7 @@
A collection of values to list
The Hibernate type of the values
-
+
Bind multiple values to a named query parameter, guessing the Hibernate
type from the class of the first object in the collection. This is useful for binding a list
@@ -26625,6 +25749,11 @@
+
+
+ Warning: adds new parameters to the argument by side-effect, as well as mutating the query expression tree!
+
+
Functionality common to stateless and stateful sessions
@@ -26725,7 +25854,7 @@
Specify an association fetching strategy. Currently, only
one-to-many and one-to-one associations are supported.
- A dot seperated property path.
+ A dot separated property path.
The Fetch mode.
@@ -26785,7 +25914,7 @@
Create a new , "rooted" at the associated entity,
using the specified join type.
- A dot-seperated property path
+ A dot-separated property path
The type of join to use
The created "sub criteria"
@@ -27329,6 +26458,13 @@
Lambda expression demonstrating call of custom method
function to convert MethodCallExpression to IProjection
+
+
+ Register a custom projection for use in a QueryOver expression
+
+ Lambda expression demonstrating call of custom method
+ function to convert MethodCallExpression to IProjection
+
Retreive the property name from a supplied PropertyProjection
@@ -27825,7 +26961,7 @@
Should the query force a refresh of the specified query cache region?
This is particularly useful in cases where underlying data may have been
- updated via a seperate process (i.e., not modified through Hibernate) and
+ updated via a separate process (i.e., not modified through Hibernate) and
allows the application to selectively refresh the query cache regions
based on its knowledge of those events.
Should the query result in a forcible refresh of
@@ -27857,7 +26993,7 @@
The non-null parameter value
The instance for method chain.
-
+
Bind multiple values to a named query parameter. This is useful for binding a list
of values to an expression such as foo.bar in (:value_list)
@@ -27867,7 +27003,7 @@
The Hibernate type of the values
The instance for method chain.
-
+
Bind multiple values to a named query parameter, guessing the Hibernate
type from the class of the first object in the collection. This is useful for binding a list
@@ -28289,7 +27425,7 @@
-
+
Constructor used for OpenSession(...) processing, as well as construction
of sessions for GetCurrentSession().
@@ -28302,6 +27438,7 @@
The entity-mode for this session
Should we auto flush before completion of transaction
Should we auto close after completion of transaction
+ Should we ignore exceptions in IInterceptor.BeforeTransactionCompletion
The mode by which we should release JDBC connections.
@@ -28381,13 +27518,10 @@
Cascade refresh an entity instance
-
- Cascade copy an entity instance
-
-
+
Cascade delete an entity instance
-
+
detect in-memory changes, determine if the changes are to tables
named in the query and, if so, complete execution the flush
@@ -29081,10 +28215,10 @@
Initialize the property, and return its new value
-
+
All joins are created as outer joins. An optimization in finds
- joins that may be inner joined and calls on them.
+ joins that may be inner joined and calls on them.
's will
then emit the correct HQL join.
@@ -29100,6 +28234,20 @@
other databases.
+
+
+ Remove redundant casts to the same type or to superclass (upcast) in ,
+ and s
+
+
+
+
+ Applications of the string.Compare(a,b) and a.CompareTo(b) (for various types)
+ that are then immediately compared to 0 can be simplified by removing the
+ Compare/CompareTo method call. The comparison operator is then applied
+ directly to the arguments for the Compare/CompareTo call.
+
+
An AggregatingGroupBy is a query such as:
@@ -29146,11 +28294,6 @@
-
-
- This re-writer is responsible to re-write a query without a body (no where-clause and so on).
-
-
Removes various result operators from a query so that they can be processed at the same
@@ -29207,6 +28350,12 @@
Locates constants in the expression tree and generates parameters for each one
+
+
+ If the querySource is a subquery, return the SelectClause's selector if it's
+ NewExpression. Otherwise, return null.
+
+
Represents a possible set of values for a computation. For example, an expression may
@@ -29219,17 +28368,52 @@
null checks.
+
+
+ Verify that ExpressionType of both this and the other set is bool or nullable bool,
+ and return the negotiated type (nullable bool if either side is nullable).
+
+
+
+
+ Verify that ExpressionType is bool or nullable bool.
+
+
Identifies and names - using - all QueryModel query sources
- It may seem expensive to do this as a seperate visitation of the query model, but unfortunately
+ It may seem expensive to do this as a separate visitation of the query model, but unfortunately
trying to identify query sources on the fly (i.e. while parsing the query model to generate
the HQL expression tree) means a query source may be referenced by a QuerySourceReference
before it has been identified - and named.
+
+
+ Analyze the select clause to determine what parts can be translated
+ fully to HQL, and some other properties of the clause.
+
+
+
+
+ The expression parts that can be converted to pure HQL.
+
+
+
+
+ If true after an expression have been analyzed, the
+ expression as a whole contain at least one method call which
+ cannot be converted to a registered function, i.e. it must
+ be executed client side.
+
+
+
+
+ Some conditional expressions can be redured to just their IfTrue or IfFalse part.
+
+
@@ -29256,6 +28440,14 @@
The of the no-generic method or the generic-definition for a generic-method.
+
+
+ Extract the from a given expression.
+
+ The declaring-type of the method.
+ The method.
+ The of the method.
+
Extract the from a given expression.
@@ -29264,6 +28456,13 @@
The of the no-generic method or the generic-definition for a generic-method.
+
+
+ Extract the from a given expression.
+
+ The method.
+ The of the method.
+
Gets the field or property to be accessed.
@@ -29273,6 +28472,18 @@
The expression representing the property getter.
The of the property.
+
+
+ If debug logging is enabled, log a string such as "msg: expression.ToString()".
+
+
+
+
+ Replace all occurances of ConstantExpression where the value is an NHibernate
+ proxy with a ParameterExpression. The name of the parameter will be a string
+ representing the proxied entity, without initializing it.
+
+
Provides the main entry point to a LINQ query.
@@ -29306,10 +28517,13 @@
-
+
- Peform an unsafe cast to T (i.e. (T)source). This is only for
- syntactically more pleasing code.
+ Use the SqlMethods.Like() method in a Linq2NHibernate expression to generate
+ an SQL LIKE expression. (If you want to avoid depending on the NHibernate.Linq namespace,
+ you can define your own replica of this method. Any 2-argument method named Like in a class named SqlMethods
+ will be translated.) This method can only be used in Linq2NHibernate expression, and will throw
+ if called directly.
@@ -29415,7 +28629,7 @@
this method is side-effecty
-
+
Should we join this association?
@@ -29459,11 +28673,6 @@
join it more than once, and create circularities
-
-
- We can use an inner join for first many-to-many association
-
-
Loads a collection of values or a many-to-many association.
@@ -29490,6 +28699,371 @@
Tablse are joined using an ANSI-style left outer join.
+
+
+ Abstract superclass of object loading (and querying) strategies.
+
+
+
+ This class implements useful common functionality that concrete loaders would delegate to.
+ It is not intended that this functionality would be directly accessed by client code (Hence,
+ all methods of this class are declared protected or private.) This class relies heavily upon the
+ interface, which is the contract between this class and
+ s that may be loaded by it.
+
+
+ The present implementation is able to load any number of columns of entities and at most
+ one collection role per query.
+
+
+
+
+
+
+ Indicates whether the dialect is able to add limit and/or offset clauses to .
+ Even if a dialect generally supports the addition of limit and/or offset clauses to SQL statements,
+ there may (custom) SQL statements where this is not possible, for example in case of SQL Server
+ stored procedure invocations.
+
+
+
+
+ What lock mode does this load entities with?
+
+ A Collection of lock modes specified dynamically via the Query Interface
+
+
+
+
+ Append FOR UPDATE OF clause, if necessary. This
+ empty superclass implementation merely returns its first
+ argument.
+
+
+
+
+ Does this query return objects that might be already cached by
+ the session, whose lock mode may need upgrading.
+
+
+
+
+
+ Modify the SQL, adding lock hints and comments, if necessary
+
+
+
+
+ Execute an SQL query and attempt to instantiate instances of the class mapped by the given
+ persister from each row of the DataReader. If an object is supplied, will attempt to
+ initialize that object. If a collection is supplied, attempt to initialize that collection.
+
+
+
+
+ Loads a single row from the result set. This is the processing used from the
+ ScrollableResults where no collection fetches were encountered.
+
+ The result set from which to do the load.
+ The session from which the request originated.
+ The query parameters specified by the user.
+ Should proxies be generated
+ The loaded "row".
+
+
+
+
+ Read any collection elements contained in a single row of the result set
+
+
+
+
+ Determine the actual ResultTransformer that will be used to transform query results.
+
+ The specified result transformer.
+ The actual result transformer.
+
+
+
+ Are rows transformed immediately after being read from the ResultSet?
+
+ The specified result transformer.
+ True, if getResultColumnOrRow() transforms the results; false, otherwise
+
+
+
+ Get the actual object that is returned in the user-visible result list.
+
+
+ This empty implementation merely returns its first argument. This is
+ overridden by some subclasses.
+
+
+
+
+ For missing objects associated by one-to-one with another object in the
+ result set, register the fact that the the object is missing with the
+ session.
+
+
+
+
+ Read one collection element from the current row of the ADO.NET result set
+
+
+
+
+ If this is a collection initializer, we need to tell the session that a collection
+ is being initilized, to account for the possibility of the collection having
+ no elements (hence no rows in the result set).
+
+
+
+
+ Read a row of EntityKeys from the IDataReader into the given array.
+
+
+ Warning: this method is side-effecty. If an id is given, don't bother going
+ to the IDataReader
+
+
+
+
+ Check the version of the object in the IDataReader against
+ the object version in the session cache, throwing an exception
+ if the version numbers are different.
+
+
+
+
+
+ Resolve any ids for currently loaded objects, duplications within the IDataReader,
+ etc. Instanciate empty objects to be initialized from the IDataReader. Return an
+ array of objects (a row of results) and an array of booleans (by side-effect) that determine
+ wheter the corresponding object should be initialized
+
+
+
+
+ The entity instance is already in the session cache
+
+
+
+
+ The entity instance is not in the session cache
+
+
+
+
+ Hydrate the state of an object from the SQL IDataReader, into
+ an array of "hydrated" values (do not resolve associations yet),
+ and pass the hydrated state to the session.
+
+
+
+
+ Determine the concrete class of an instance for the IDataReader
+
+
+
+
+ Advance the cursor to the first required row of the IDataReader
+
+
+
+
+ Should we pre-process the SQL string, adding a dialect-specific
+ LIMIT clause.
+
+
+
+
+
+
+
+ Performs dialect-specific manipulations on the offset value before returning it.
+ This method is applicable for use in limit statements only.
+
+
+
+
+ Performs dialect-specific manipulations on the limit value before returning it.
+ This method is applicable for use in limit statements only.
+
+
+
+
+ Obtain an IDbCommand with all parameters pre-bound. Bind positional parameters,
+ named parameters, and limit parameters.
+
+
+ Creates an IDbCommand object and populates it with the values necessary to execute it against the
+ database to Load an Entity.
+
+ The to use for the IDbCommand.
+ TODO: find out where this is used...
+ The SessionImpl this Command is being prepared in.
+ A CommandWrapper wrapping an IDbCommand that is ready to be executed.
+
+
+
+ Some dialect-specific LIMIT clauses require the maximium last row number
+ (aka, first_row_number + total_row_count), while others require the maximum
+ returned row count (the total maximum number of rows to return).
+
+ The selection criteria
+ The dialect
+ The appropriate value to bind into the limit clause.
+
+
+
+ Fetch a IDbCommand, call SetMaxRows and then execute it,
+ advance to the first result and return an SQL IDataReader
+
+ The to execute.
+ The to apply to the and .
+ true if result types need to be auto-discovered by the loader; false otherwise.
+ The to load in.
+
+ An IDataReader advanced to the first record in RowSelection.
+
+
+
+ Called by subclasses that load entities
+
+
+
+
+ Called by subclasses that batch load entities
+
+
+
+
+ Called by subclasses that load collections
+
+
+
+
+ Called by wrappers that batch initialize collections
+
+
+
+
+ Called by subclasses that batch initialize collections
+
+
+
+
+ Return the query results, using the query cache, called
+ by subclasses that implement cacheable queries
+
+
+
+
+
+
+
+
+
+ Actually execute a query, ignoring the query cache
+
+
+
+
+
+
+
+ Calculate and cache select-clause suffixes. Must be
+ called by subclasses after instantiation.
+
+
+
+
+ An array indicating whether the entities have eager property fetching
+ enabled.
+
+ Eager property fetching indicators.
+
+
+
+ An array of indexes of the entity that owns a one-to-one association
+ to the entity at the given index (-1 if there is no "owner")
+
+
+ The indexes contained here are relative to the result of .
+
+
+
+
+ An array of the owner types corresponding to the
+ returns. Indices indicating no owner would be null here.
+
+
+
+
+ Get the index of the entity that owns the collection, or -1
+ if there is no owner in the query results (i.e. in the case of a
+ collection initializer) or no collection.
+
+
+
+
+ Return false is this loader is a batch entity loader
+
+
+
+
+ Get the result set descriptor
+
+
+
+
+ The SqlString to be called; implemented by all subclasses
+
+
+
+
+ An array of persisters of entity classes contained in each row of results;
+ implemented by all subclasses
+
+
+ The setter was added so that classes inheriting from Loader could write a
+ value using the Property instead of directly to the field.
+
+
+
+
+ An (optional) persister for a collection to be initialized; only collection loaders
+ return a non-null value
+
+
+
+
+ Get the SQL table aliases of entities whose
+ associations are subselect-loadable, returning
+ null if this loader does not support subselect
+ loading
+
+
+
+
+ Returns the aliases that correspond to a result row.
+
+ Returns the aliases that correspond to a result row.
+
+
+
+ Identifies the query for statistics reporting, if null,
+ no statistics will be reported
+
+
+
+
+ Utility method that generates 0_, 1_ suffixes. Subclasses don't
+ necessarily need to use this algorithm, but it is intended that
+ they will in most cases.
+
+
An interface for collection loaders
@@ -29899,6 +29473,13 @@
create a customized subclass of .
+
+
+
+
+ a collection of lock modes specified dynamically via the Query interface
+
+
CollectionAliases which handles the logic of selecting user provided aliases (via return-property),
@@ -30088,6 +29669,11 @@
Util extensions to use in your test or where you need to see the XML mappings
+
+
+ Immutable value class. By-value equality.
+
+
Provide the list of progressive-paths
@@ -30475,9 +30061,9 @@
- For any column name, generate an alias that is unique
- to that column name, and also 10 characters or less
- in length.
+ For any column name, generate an alias that is unique
+ to that column name, and also 10 characters or less
+ in length.
@@ -30843,7 +30429,7 @@
The to include in the Table.
-
+
Gets the identified by the name.
@@ -30853,7 +30439,7 @@
identified by the name does not exist then it is created.
-
+
Gets the identified by the name.
@@ -34522,9 +34108,6 @@
"table-per-class hierarchy" mapping strategy for an entity class.
-
- Generate the SQL that selects a row by id
-
Factory for IEntityPersister and ICollectionPersister instances.
@@ -35470,7 +35053,7 @@
Associate the proxy with the given session.
Care should be given to make certain that the proxy is added to the session's persistence context as well
- to maintain the symmetry of the association. That must be done seperately as this method simply sets an
+ to maintain the symmetry of the association. That must be done separately as this method simply sets an
internal reference. We do also check that if there is already an associated session that the proxy
reference was removed from that previous session's persistence context.
@@ -35606,7 +35189,7 @@
Contract for run-time, proxy-based lazy initialization proxies.
-
+
Called immediately after instantiation of this factory.
The name of the entity for which this factory should generate proxies.
@@ -35749,6 +35332,113 @@
This method is approximate match for Session.bestGuessEntityName in H3.2
+
+
+ Represents SQL Server SELECT query parser, primarily intended to support generation of
+ limit queries by SQL Server dialects.
+
+
+
+
+ Column definitions in SELECT clause
+
+
+
+
+ Column definitions for columns that appear in ORDER BY clause
+ but do not appear in SELECT clause.
+
+
+
+
+ Sort orders as defined in ORDER BY clause
+
+
+
+
+ A SQL query token as returned by
+
+
+
+
+ Position at which this token occurs in a .
+
+
+
+
+ Number of characters in this token.
+
+
+
+
+ Splits a into s.
+
+
+
+
+ token types.
+
+
+
+
+ Whitespace
+
+
+
+
+ Single line comment (preceeded by --) or multi-line comment (terminated by /* and */)
+
+
+
+
+ Keywords, operators or undelimited identifiers.
+
+
+
+
+ Delimited identifiers or string literals.
+
+
+
+
+ A query parameter.
+
+
+
+
+ List separator, the ',' character.
+
+
+
+
+ Begin of an expression block, consisting of a '(' character.
+
+
+
+
+ End of an expression block, consisting of a ')' character.
+
+
+
+
+ Tokens for begin or end of expression blocks.
+
+
+
+
+ Includes all token types except whitespace or comments
+
+
+
+
+ Includes all token types except whitespace
+
+
+
+
+ Includes all token types
+
+
Aliases tables and fields for Sql Statements.
@@ -35930,7 +35620,7 @@
- Generates an array of parameters for the given SqlTypes.
+ Generates an array of parameters.
The number of parameters to generate.
An array of objects
@@ -36018,25 +35708,25 @@
-
+
-
+
-
+
-
+
@@ -36049,7 +35739,7 @@
The "order by" sql statement.
-
+
@@ -36871,6 +36561,11 @@
Returns a string or Parameter.
+
+
+ Helper methods for SqlString.
+
+
A class that builds an UPDATE sql statement.
@@ -37450,8 +37145,30 @@
Run the schema creation script
- if the ddl should be outputted in the Console.
- if the ddl should be executed against the Database.
+ if the ddl should be outputted in the Console.
+ if the ddl should be executed against the Database.
+
+ This is a convenience method that calls and sets
+ the justDrop parameter to false.
+
+
+
+
+ Run the schema creation script
+
+ an action that will be called for each line of the generated ddl.
+ if the ddl should be executed against the Database.
+
+ This is a convenience method that calls and sets
+ the justDrop parameter to false.
+
+
+
+
+ Run the schema creation script
+
+ if non-null, the ddl will be written to this TextWriter.
+ if the ddl should be executed against the Database.
This is a convenience method that calls and sets
the justDrop parameter to false.
@@ -37461,19 +37178,30 @@
Run the drop schema script
- if the ddl should be outputted in the Console.
- if the ddl should be executed against the Database.
+ if the ddl should be outputted in the Console.
+ if the ddl should be executed against the Database.
This is a convenience method that calls and sets
the justDrop parameter to true.
+
+
+ Run the drop schema script
+
+ if non-null, the ddl will be written to this TextWriter.
+ if the ddl should be executed against the Database.
+
+ This is a convenience method that calls and sets
+ the justDrop parameter to true.
+
+
Executes the Export of the Schema in the given connection
- if the ddl should be outputted in the Console.
- if the ddl should be executed against the Database.
+ if the ddl should be outputted in the Console.
+ if the ddl should be executed against the Database.
if only the ddl to drop the Database objects should be executed.
The connection to use when executing the commands when export is .
@@ -37490,8 +37218,8 @@
Executes the Export of the Schema.
- if the ddl should be outputted in the Console.
- if the ddl should be executed against the Database.
+ if the ddl should be outputted in the Console.
+ if the ddl should be executed against the Database.
if only the ddl to drop the Database objects should be executed.
This method allows for both the drop and create ddl script to be executed.
@@ -37745,6 +37473,78 @@
A mimic to the javax.transaction.Synchronization callback to enable
+
+
+ Create an AfterTransactionCompletes that will execute the given delegate
+ when the transaction is completed. The action delegate will receive
+ the value 'true' if the transaction was completed successfully.
+
+
+
+
+
+ An implementation of TupleSubsetResultTransformer that ignores a
+ tuple element if its corresponding alias is null.
+
+ @author Gail Badner
+
+
+
+ A ResultTransformer that operates on "well-defined" and consistent
+ subset of a tuple's elements.
+
+ "Well-defined" means that:
+
+ -
+ the indexes of tuple elements accessed by an
+ ITupleSubsetResultTransformer depends only on the aliases
+ and the number of elements in the tuple; i.e, it does
+ not depend on the value of the tuple being transformed;
+
+ -
+ any tuple elements included in the transformed value are
+ unmodified by the transformation;
+
+ -
+ transforming equivalent tuples with the same aliases multiple
+ times results in transformed values that are equivalent;
+
+ -
+ the result of transforming the tuple subset (only those
+ elements accessed by the transformer) using only the
+ corresponding aliases is equivalent to transforming the
+ full tuple with the full array of aliases;
+
+ -
+ the result of transforming a tuple with non-accessed tuple
+ elements and corresponding aliases set to null
+ is equivalent to transforming the full tuple with the
+ full array of aliases;
+
+
+
+
+ @author Gail Badner
+
+
+
+ When a tuple is transformed, is the result a single element of the tuple?
+
+ The aliases that correspond to the tuple.
+ The number of elements in the tuple.
+ True, if the transformed value is a single element of the tuple;
+ false, otherwise.
+
+
+
+ Returns an array with the i-th element indicating whether the i-th
+ element of the tuple is included in the transformed value.
+
+ The aliases that correspond to the tuple.
+ The number of elements in the tuple.
+ Array with the i-th element indicating whether the i-th
+ element of the tuple is included in the transformed value.
+
Result transformer that allows to transform a result to
@@ -37766,6 +37566,132 @@
+
+
+ A ResultTransformer that is used to transform tuples to a value(s) that can be cached.
+
+ @author Gail Badner
+
+
+
+ Array with the i-th element indicating whether the i-th
+ expression returned by a query is included in the tuple.
+
+ IMPLEMENTATION NOTE:
+ "joined" and "fetched" associations may use the same SQL,
+ but result in different tuple and cached values. This is
+ because "fetched" associations are excluded from the tuple.
+ includeInTuple provides a way to distinguish these 2 cases.
+
+
+
+ Indexes for tuple that are included in the transformation.
+ Set to null if all elements in the tuple are included.
+
+
+
+
+ Returns a CacheableResultTransformer that is used to transform
+ tuples to a value(s) that can be cached.
+
+ result transformer that will ultimately be used (after caching results)
+ the aliases that correspond to the tuple;
+ if it is non-null, its length must equal the number
+ of true elements in includeInTuple[]
+ array with the i-th element indicating
+ whether the i-th expression returned by a query is
+ included in the tuple; the number of true values equals
+ the length of the tuple that will be transformed;
+ must be non-null
+ a CacheableResultTransformer that is used to transform
+ tuples to a value(s) that can be cached.
+
+
+
+ Returns a CacheableResultTransformer that is used to transform
+ tuples to a value(s) that can be cached.
+
+ a tuple subset result transformer;
+ must be non-null;
+ the aliases that correspond to the tuple;
+ if it is non-null, its length must equal the number
+ of true elements in includeInTuple[]
+ array with the i-th element indicating
+ whether the i-th expression returned by a query is
+ included in the tuple; the number of true values equals
+ the length of the tuple that will be transformed;
+ must be non-null
+ a CacheableResultTransformer that is used to transform
+ tuples to a value(s) that can be cached.
+
+
+
+ Returns a CacheableResultTransformer that is used to transform
+ tuples to a value(s) that can be cached.
+
+ array with the i-th element indicating
+ whether the i-th expression returned by a query is
+ included in the tuple; the number of true values equals
+ the length of the tuple that will be transformed;
+ must be non-null
+ a CacheableResultTransformer that is used to transform
+ tuples to a value(s) that can be cached.
+
+
+
+ Re-transforms, if necessary, a List of values previously
+ transformed by this (or an equivalent) CacheableResultTransformer.
+ Each element of the list is re-transformed in place (i.e, List
+ elements are replaced with re-transformed values) and the original
+ List is returned. If re-transformation is unnecessary, the original List is returned
+ unchanged.
+
+ Results that were previously transformed.
+ The aliases that correspond to the untransformed tuple.
+ The transformer for the re-transformation.
+
+ transformedResults, with each element re-transformed (if nececessary).
+
+
+
+ Untransforms, if necessary, a List of values previously
+ transformed by this (or an equivalent) CacheableResultTransformer.
+ Each element of the list is untransformed in place (i.e, List
+ elements are replaced with untransformed values) and the original
+ List is returned.
+
+ If not unnecessary, the original List is returned
+ unchanged.
+
+
+
+ NOTE: If transformed values are a subset of the original
+ tuple, then, on return, elements corresponding to
+ excluded tuple elements will be null.
+
+ Results that were previously transformed.
+ results, with each element untransformed (if nececessary).
+
+
+
+ Returns the result types for the transformed value.
+
+
+
+
+ "Compact" the given array by picking only the elements identified by
+ the _includeInTransformIndex array. The picked elements are returned
+ in a new array.
+
+
+
+
+ Expand the given array by putting each of its elements at the
+ position identified by the _includeInTransformIndex array. The
+ elements are placed in a new array - the original array will
+ not be modified.
+
+
Tranforms each result row from a tuple into a , such that what
@@ -39190,45 +39116,6 @@
-
-
- An that maps an collection
- using bag semantics to the database.
-
-
-
-
- Initializes a new instance of a class for
- a specific role.
-
- The role the persistent collection is in.
- The name of the property in the
- owner object containing the collection ID, or if it is
- the primary key.
-
-
-
-
- Instantiates a new for the bag.
-
- The current for the bag.
-
-
- A new .
-
-
-
- Wraps an in a NHibernate .
-
- The for the collection to be a part of.
- The unwrapped .
-
- An that wraps the non NHibernate .
-
-
-
-
-
Maps a System.Byte[] Property to an column that can store a BLOB.
@@ -39971,24 +39858,23 @@
An that wraps the non NHibernate .
-
+
- An that maps an collection
+ An that maps an collection
using bag semantics with an identifier to the database.
-
+
- Initializes a new instance of a class for
+ Initializes a new instance of a class for
a specific role.
The role the persistent collection is in.
The name of the property in the
owner object containing the collection ID, or if it is
the primary key.
-
-
+
Instantiates a new for the identifier bag.
@@ -39997,17 +39883,28 @@
-
+
- Wraps an in a .
+ Wraps an in a .
The for the collection to be a part of.
- The unwrapped .
+ The unwrapped .
- An that wraps the non NHibernate .
+ An that wraps the non NHibernate .
-
+
+
+ Instantiate an empty instance of the "underlying" collection (not a wrapper),
+ but with the given anticipated size (i.e. accounting for initial capacity
+ and perhaps load factor).
+
+
+ The anticipated size of the instantiated collection after we are done populating it.
+
+ A newly instantiated collection to be wrapped.
+
+
@@ -40016,45 +39913,6 @@
to the database using list semantics.
-
-
- An that maps an collection
- using list semantics to the database.
-
-
-
-
- Initializes a new instance of a class for
- a specific role.
-
- The role the persistent collection is in.
- The name of the property in the
- owner object containing the collection ID, or if it is
- the primary key.
-
-
-
-
- Instantiates a new for the bag.
-
- The current for the bag.
-
-
- A new .
-
-
-
- Wraps an exist in a NHibernate .
-
- The for the collection to be a part of.
- The unwrapped .
-
- An that wraps the non NHibernate .
-
-
-
-
-
Initializes a new instance of a class for
@@ -40089,45 +39947,6 @@
to the database.
-
-
- An that maps an collection
- to the database.
-
-
-
-
- Initializes a new instance of a class for
- a specific role.
-
- The role the persistent collection is in.
- The name of the property in the
- owner object containing the collection ID, or if it is
- the primary key.
-
-
-
-
- Instantiates a new for the map.
-
- The current for the map.
-
-
-
-
-
-
- Wraps an in a .
-
- The for the collection to be a part of.
- The unwrapped .
-
- An that wraps the non NHibernate .
-
-
-
-
-
Initializes a new instance of a class for
@@ -40160,57 +39979,16 @@
- An that maps a sorted collection
+ An that maps a sorted collection
to the database.
- An that maps an collection
- to the database.
-
-
-
-
- An that maps an collection
+ An that maps an collection
to the database.
-
-
- Initializes a new instance of a class for
- a specific role.
-
- The role the persistent collection is in.
- The name of the property in the
- owner object containing the collection ID, or if it is
- the primary key.
-
-
-
-
- Instantiates a new for the set.
-
- The current for the set.
-
-
-
-
-
-
- Wraps an in a .
-
- The for the collection to be a part of.
- The unwrapped .
-
- An that wraps the non NHibernate .
-
-
-
-
-
-
-
Initializes a new instance of a class for
@@ -40251,7 +40029,7 @@
- An that maps a sorted collection
+ An that maps a sorted collection
to the database.
@@ -40363,34 +40141,6 @@
association is never dirty
-
-
- A implemented using a collection that maintains
- the order in which elements are inserted into it.
-
-
-
-
- Initializes a new instance of a class.
-
- The role the persistent collection is in.
-
-
-
-
-
- A implemented using a collection that maintains
- the order in which elements are inserted into it.
-
-
-
-
- Initializes a new instance of a class
-
- The role the persistent collection is in.
-
-
-
PersistentEnumType
@@ -40520,40 +40270,6 @@
-
-
- Extends the to provide sorting.
-
-
-
-
- Initializes a new instance of a class for
- a specific role using the to do the sorting.
-
- The role the persistent collection is in.
- The name of the property in the
- owner object containing the collection ID, or if it is
- the primary key.
- The to use for the sorting.
-
-
-
-
- Extends the to provide sorting.
-
-
-
-
- Initializes a new instance of a class for
- a specific role using the to do the sorting.
-
- The role the persistent collection is in.
- The name of the property in the
- owner object containing the collection ID, or if it is
- the primary key.
- The to use for the sorting.
-
-
A one-to-one association that maps to specific formula(s)
@@ -41462,11 +41178,22 @@
data structures used through out NHibernate.
-
+
- Sets item at position to .
- Expands the list by adding values, if needed.
+ Append all elements in the 'from' list to the 'to' list.
+
+
+
+
+
+ Calculate a hash code based on the length and contents of the array.
+ The algorithm is such that if ArrayHelper.ArrayEquals(a,b) returns true,
+ then ArrayGetHashCode(a) == ArrayGetHashCode(b).
+
+
+
+
@@ -41526,6 +41253,7 @@
.
+
@@ -41687,13 +41415,12 @@
- Set implementation that use == instead of equals() as its comparison mechanism
- that base its implementation of IdentityMap
+ Set implementation that use reference equals instead of Equals() as its comparison mechanism.
- Combines multiple objects implementing into one.
+ Concatenates multiple objects implementing into one.
@@ -41702,32 +41429,26 @@
The IEnumerables to join together.
-
-
-
-
-
-
-
+
A flag to indicate if Dispose() has been called.
-
+
Finalizer that ensures the object is correctly disposed of.
-
+
Takes care of freeing the managed and unmanaged resources that
this class is responsible for.
-
+
Takes care of freeing the managed and unmanaged resources that
this class is responsible for.
@@ -41739,9 +41460,6 @@
EnumerableImpl.
-
-
-
A map of objects whose mapping entries are sequenced based on the order in which they were
@@ -41983,36 +41701,18 @@
Return the full DictionaryEntry
-
-
- Summary description for ObjectUtils.
-
-
-
-
-
-
-
-
-
-
-
+
-
+ Various small helper methods.
-
-
-
-
+
-
+ Return an identifying string representation for the object, taking
+ NHibernate proxies into account. The returned string will be "null",
+ "classname@hashcode(hash)", or "entityname#identifier". If the object
+ is an uninitialized NHibernate proxy, take care not to initialize it.
-
-
-
-
-
@@ -42271,6 +41971,11 @@
+
+
+ This allows for both CRLF and lone LF line separators.
+
+
@@ -42447,6 +42152,22 @@
A
A
+
+
+ Return the index of the next line separator, starting at startIndex. If will match
+ the first CRLF or LF line separator. If there is no match, -1 will be returned. When
+ returning, newLineLength will be set to the number of characters in the matched line
+ separator (1 if LF was found, 2 if CRLF was found).
+
+
+
+
+ Check if the given index points to a line separator in the string. Both CRLF and LF
+ line separators are handled. When returning, newLineLength will be set to the number
+ of characters matched in the line separator. It will be 2 if a CRLF matched, 1 if LF
+ matched, and 0 if the index doesn't indicate (the start of) a line separator.
+
+
A StringTokenizer java like object