Pure package detail
json
gno.land/p/samcrew/deps/onbloc/json
Indexed deployment identity with independently loaded latest RPC source. Functions and Render are realm-only RPC capabilities.
Indexed deployment
Identity
- Package path
- gno.land/p/samcrew/deps/onbloc/json
- Block
- 98887
- Deployed (UTC)
- Transaction
- tKjntaAvNpAcDJkGy/yEZbVogDdEPG9qKod0oURnngA=
Latest RPC state
Source
package json
type NodeBuilder struct {
node *Node
}
func Builder() *NodeBuilder {
return &NodeBuilder{node: ObjectNode("", nil)}
}
func (b *NodeBuilder) WriteString(key, value string) *NodeBuilder {
b.node.AppendObject(key, StringNode("", value))
return b
}
func (b *NodeBuilder) WriteNumber(key string, value float64) *NodeBuilder {
b.node.AppendObject(key, NumberNode("", value))
return b
}
func (b *NodeBuilder) WriteBool(key string, value bool) *NodeBuilder {
b.node.AppendObject(key, BoolNode("", value))
return b
}
func (b *NodeBuilder) WriteNull(key string) *NodeBuilder {
b.node.AppendObject(key, NullNode(""))
return b
}
func (b *NodeBuilder) WriteObject(key string, fn func(*NodeBuilder)) *NodeBuilder {
nestedBuilder := &NodeBuilder{node: ObjectNode("", nil)}
fn(nestedBuilder)
b.node.AppendObject(key, nestedBuilder.node)
return b
}
func (b *NodeBuilder) WriteArray(key string, fn func(*ArrayBuilder)) *NodeBuilder {
arrayBuilder := &ArrayBuilder{nodes: []*Node{}}
fn(arrayBuilder)
b.node.AppendObject(key, ArrayNode("", arrayBuilder.nodes))
return b
}
func (b *NodeBuilder) Node() *Node {
return b.node
}
type ArrayBuilder struct {
nodes []*Node
}
func (ab *ArrayBuilder) WriteString(value string) *ArrayBuilder {
ab.nodes = append(ab.nodes, StringNode("", value))
return ab
}
func (ab *ArrayBuilder) WriteNumber(value float64) *ArrayBuilder {
ab.nodes = append(ab.nodes, NumberNode("", value))
return ab
}
func (ab *ArrayBuilder) WriteInt(value int) *ArrayBuilder {
return ab.WriteNumber(float64(value))
}
func (ab *ArrayBuilder) WriteBool(value bool) *ArrayBuilder {
ab.nodes = append(ab.nodes, BoolNode("", value))
return ab
}
func (ab *ArrayBuilder) WriteNull() *ArrayBuilder {
ab.nodes = append(ab.nodes, NullNode(""))
return ab
}
func (ab *ArrayBuilder) WriteObject(fn func(*NodeBuilder)) *ArrayBuilder {
nestedBuilder := &NodeBuilder{node: ObjectNode("", nil)}
fn(nestedBuilder)
ab.nodes = append(ab.nodes, nestedBuilder.node)
return ab
}
func (ab *ArrayBuilder) WriteArray(fn func(*ArrayBuilder)) *ArrayBuilder {
nestedArrayBuilder := &ArrayBuilder{nodes: []*Node{}}
fn(nestedArrayBuilder)
ab.nodes = append(ab.nodes, ArrayNode("", nestedArrayBuilder.nodes))
return ab
}
The verified vm/qfuncs operation accepts realm paths only.
Pure packages expose source files but do not have Realm Render.