CypressTest1.script
Donahue, March 5, 1986 4:17:12 pm PST
AlpineUser
run CardTableImpl Cypress CypressSequences
Now, start an interpreter
DB.Initialize[]
DB.DeclareSegment[filePath: "[Luther.alpine]<Donahue.pa>NewCypress>Test.segment", segment: $Test, lock: [intendWrite, wait]]
DB.GetSegmentInfo[$Test]
&trans ← DB.OpenTransaction[$Test]
&foo ← DB.LookupDomain["Foo", $Test]
&baz ← DB.LookupDomain["Baz", $Test]
&fields ← CypressSequences.MakeFieldSpec[2]
&fields.fields[0] ← [name: "f1", type: DBDefs.ropeType, lengthHint: 20]
&fields.fields[1] ← [name: "f2", type: DBDefs.intType]
&key ← CypressSequences.MakeIndex[1]
&key.fields[0] ← 1
&r ← DB.DeclareRelation["R1", $Test, &fields, LIST[&key]]
&vals ← CypressSequences.MakeValueSequence[2]
CypressSequences.SetValueSequence[&vals, 0, DBDefs.Value[rope["Hello"]]]
CypressSequences.SetValueSequence[&vals, 1, DBDefs.Value[integer[17]]]
&rship ← DB.CreateRelship[&r, &vals]
DB.GetF[&rship, 0]
DB.GetF[&rship, 1]
DB.SetF[&rship, 0, DBDefs.Value[rope["Blortz"]]]