I
IComparer<T> interface, 132
identical members, constraints exposing, 123124
IEnumerable<T>
interface
container support, 134
described, 130131
"for each" iteration, enabling, 236
IEnumerator<T>
interface, 132
IEqualityComparer<T>
inferface, 132, 299
IL
code, examining, 38
.NET representation, 246247
run-time instantiation, 3738
index
collection object, finding, 136
key in sorted list, 182183
keyed collection object, finding, 159
list items, 162, 163
Power Collection object
BigList<T>
, 333
described, 297298
pattern, searching for, 315316
read-only dictionary, 361
read-only collection, 177
indexers
dictionaries, 153
generic classes, 7780
Power Collection dictionary class, 341
sorted, 179
inference, type
generics guidelines, 233234
methods, 95
inheritance
C++ generic classes, 266267
generally, 5255
generic constraints, 126127
polymorphism, achieving, 13
protected members, 5556
reflection, 198199
type, specifying, 28
inserting
linked list node, 160
list items, 163
new object into collection, 136
range into BigList<T>, 333
inspecting BCL collections, 142144
interface
BCL generics, 130132
C++ class template declaration, 274277
classes versus, 240241
constraints, 123124
generic classes, 8182
generic constraints, 115
generics guidelines, 227
J#
basic, 283285
constraints, 285287
remote access, 211212
type parameters in, 6263
type safety
described, 31
preserving, 2526
internally implemented classes, BCL
adding and updating items, 165166
described, 162163
removing items, 167168
searching for items, 168171
size, pre-allocating, 164165
sorting items, 173175
transforming contents, 171173
intersection points
in Bag<T>, 322, 331332
in collection, 296
in Set<T>, 363
J
J# programming language
arrays of genetic types, 289290
constraints, 285287
cross-language support, 281283
generic delegates, calling, 289
generic types, consuming, 280281
interfaces, 283285
limitations, 279
methods, calling, 287288
migrating from Java generics, 280
type arguments, 288
JIT (just-in-time)
specialization
code sharing structures, 250251
generic classes and shared code, 249250
generic methods and shared code, 252253
open types in shared code, 251252
type instantiation, 1617
377
JIT (just-in-time)
Index
18_559885 bindex.qxd 9/8/05 11:02 PM Page 377