|
// retoor <retoor@molodetz.nl>
|
|
|
|
import "dataset" for Dataset
|
|
|
|
var ds = Dataset.memory()
|
|
var posts = ds["posts"]
|
|
|
|
var post = posts.insert({
|
|
"title": "Hello",
|
|
"tags": ["wren", "programming"],
|
|
"metadata": {"views": 100, "featured": true}
|
|
})
|
|
|
|
System.print(post["title"]) // expect: Hello
|
|
System.print(post["tags"] is List) // expect: true
|
|
System.print(post["tags"].count) // expect: 2
|
|
System.print(post["tags"][0]) // expect: wren
|
|
System.print(post["metadata"] is Map) // expect: true
|
|
System.print(post["metadata"]["views"]) // expect: 100
|
|
System.print(post["metadata"]["featured"]) // expect: true
|
|
|
|
var retrieved = posts.findOne({"title": "Hello"})
|
|
System.print(retrieved["tags"] is List) // expect: true
|
|
System.print(retrieved["tags"][1]) // expect: programming
|
|
System.print(retrieved["metadata"]["views"]) // expect: 100
|
|
|
|
var nested = posts.insert({
|
|
"title": "Nested",
|
|
"data": {
|
|
"level1": {
|
|
"level2": ["a", "b", "c"]
|
|
}
|
|
}
|
|
})
|
|
|
|
var fetched = posts.findOne({"title": "Nested"})
|
|
System.print(fetched["data"]["level1"]["level2"][0]) // expect: a
|
|
|
|
ds.close()
|