Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
|
|
@ -0,0 +1,69 @@
|
|||
#define max(a, b) Iif(a>b,a,b)
|
||||
|
||||
enum datatype
|
||||
'for this demonstration we'll allow these five data types
|
||||
BOOL
|
||||
STRNG
|
||||
BYYTE
|
||||
INTEG
|
||||
FLOAT
|
||||
end enum
|
||||
|
||||
union value
|
||||
bool as boolean
|
||||
strng as string*32
|
||||
byyte as byte
|
||||
integ as integer
|
||||
float as double
|
||||
end union
|
||||
|
||||
type dicitem
|
||||
'one part of the dictionary entry, either the key or the value
|
||||
datatype as datatype 'need to keep track of what kind of data it is
|
||||
value as value
|
||||
end type
|
||||
|
||||
type dicentry
|
||||
'a dic entry has two things, a key and a value
|
||||
key as dicitem
|
||||
value as dicitem
|
||||
end type
|
||||
|
||||
sub add_dicentry( Dic() as dicentry, entry as dicentry )
|
||||
redim preserve Dic(0 to max(ubound(Dic)+1,0))
|
||||
Dic(ubound(Dic)) = entry
|
||||
return
|
||||
end sub
|
||||
|
||||
redim as dicentry Dictionary(-1) 'initialise a dictionary with no entries as yet
|
||||
|
||||
dim as dicentry thing1, thing2
|
||||
|
||||
'generate some test dictionary entries
|
||||
with thing1
|
||||
with .key
|
||||
.datatype = STRNG
|
||||
.value.strng = "Cat"
|
||||
end with
|
||||
with .value
|
||||
.datatype = STRNG
|
||||
.value.strng = "Mittens"
|
||||
end with
|
||||
end with
|
||||
|
||||
with thing2
|
||||
with .key
|
||||
.datatype = integ
|
||||
.value.integ = 32767
|
||||
end with
|
||||
with .value
|
||||
.datatype = float
|
||||
.value.float = 2.718281828
|
||||
end with
|
||||
end with
|
||||
|
||||
add_dicentry( Dictionary(), thing1 )
|
||||
add_dicentry( Dictionary(), thing2 )
|
||||
|
||||
print Dictionary(0).value.value.strng
|
||||
print Dictionary(1).key.value.integ
|
||||
Loading…
Add table
Add a link
Reference in a new issue