source: trunk/Include/Classes/System/Collections/misc.ab@ 490

Last change on this file since 490 was 386, checked in by dai, 17 years ago

StrPtr内の判定ミスを修正。
SPrintFクラス内のx64に対するコードを修正。
ArrayListクラスのIListインターフェイス実装を一旦保留。
ListクラスにIEnumeratable、IEnumeratorインターフェイスを実装(まだ実装中…)。

File size: 3.0 KB
RevLine 
[55]1' Classes/System/Collections/misc.ab
2
3#ifndef __SYSTEM_COLLECTIONS_MISC_AB__
4#define __SYSTEM_COLLECTIONS_MISC_AB__
5
[355]6Namespace System
7Namespace Collections
8
[55]9Interface ICollection
[118]10 Inherits IEnumerable
[55]11 ' Properties
[118]12 '/*Const*/ Function Count() As Long
13 '/*Const*/ Function IsSynchronized() As Boolean
[55]14 ' Function SyncRoot() As ...
15 ' Methods
16 ' Sub CopyTo(ByRef array As ..., index As Long)
17End Interface
18
19Interface IComparer
20 ' Methods
[118]21 Function Compare(ByRef x As Object, ByRef y As Object) As Long
[55]22End Interface
23
24Interface IDictionary
[118]25 Inherits ICollection /*, IEnumerable */
[55]26 ' Methods
[118]27 Sub Add(ByRef key As Object, ByRef value As Object)
[55]28 Sub Clear()
[118]29 /*Const*/ Function Contains(ByRef key As Object) As Boolean
30' /*Const*/ Function GetEnumerator() As *IDictionaryEnumerator
31 /*Const*/ Function Remove(ByRef key As Object) As Boolean
[55]32 ' Properties
[118]33 /*Const*/ Function IsFixedSize() As Boolean
34 /*Const*/ Function IsReadOnly() As Boolean
35' /*Const*/ Function Operator [](ByRef key As Object) As *Object
36' Sub Operator []=(ByRef key As Object, ByRef value As Object)
37 /*Const*/ Function Keys() As *ICollection
38 /*Const*/ Function Values() As ICollection
[55]39End Interface
40
41Interface IDictionaryEnumerator
42 Inherits IEnumerator
43 ' Properties
[118]44 /*Const*/ Function Entry() As DictionaryEntry
45 /*Const*/ Function Key() As *Object
46 /*Const*/ Function Value() As *Object
[55]47End Interface
48
49Interface IEnumerable
50 ' Method
[386]51 Function GetEnumerator() As IEnumerator
[55]52End Interface
53
54Interface IEnumerator
55 ' Methods
[118]56 Function MoveNext() As Boolean
[55]57 Sub Reset()
58 ' Property
[386]59 Function Current() As Object
[55]60End Interface
61
62Interface IEqualityComparer
63 ' Methods
[118]64 Function Equals(ByRef x As Object, ByRef y As Object) As Boolean
65 Function GetHashCode(ByRef obj As Object) As Long
[55]66End Interface
67
68Interface IList
69 Inherits ICollection /*, IEnumerable */
70 ' Methods
[118]71 'Function Add(value As *Object) As Long
72 'Sub Clear()
73 '/*Const*/ Function Contains(value As *Object) As Boolean
[195]74 /*Const*/ Function IndexOf(value As Object) As Long
75 Sub Insert(index As Long, value As Object)
76 Sub Remove(value As Object)
[55]77 Sub RemoveAt(index As Long)
78 ' Properties
[118]79 /*Const*/ Function IsFixedSize() As Boolean
80 /*Const*/ Function IsReadOnly() As Boolean
81 '/*Const*/ Function Operator [](index As Long) As *Object
82 '/*Const*/ Sub Operator []=(index As Long, obj As *Object)
[55]83End Interface
84
85Class DictionaryEntry
86Public
[118]87 ' /*Const*/ructors
[55]88 Sub DictionaryEntry()
89 k = 0
90 v = 0
91 End Sub
92
[118]93 Sub DictionaryEntry(ByRef key As Object, ByRef value As Object)
[55]94 k = VarPtr(key)
95 v = VarPtr(value)
96 End Sub
97
98 ' Properties
[118]99 /*Const*/ Function Key() As *Object
[55]100 Return k
101 End Function
102
[118]103 Sub Key(ByRef key As Object)
[55]104 k = VarPtr(key)
105 End Sub
106
[118]107 /*Const*/ Function Value() As *Object
[55]108 Return v
109 End Function
110
[118]111 Sub Value(ByRef value As Object)
[55]112 v = VarPtr(value)
113 End Sub
114Private
[118]115 k As *Object
116 v As *Object
[55]117End Class
118
[355]119End Namespace 'Collections
120End Namespace 'System
121
[55]122#endif '__SYSTEM_COLLECTIONS_MISC_AB__
Note: See TracBrowser for help on using the repository browser.