mirror of
https://github.com/wader/fq.git
synced 2024-12-26 15:02:28 +03:00
00ee10a1a1
Before if you did toactual it behaved differently and even gave error for a scalar that only had actual value set. Now both to{actal,sym} works similar to tovalue but will force if actual or sym value should be used.
114 lines
2.3 KiB
Plaintext
114 lines
2.3 KiB
Plaintext
$ fq -i -n '"{}" | json'
|
|
json> (.) | ., tovalue, toactual, tosym, type, length?
|
|
{}
|
|
{}
|
|
{}
|
|
null
|
|
"object"
|
|
0
|
|
json> (.)[0] | ., type, length?
|
|
error: expected an array but got: object
|
|
json> (.)[-1000] | ., type, length?
|
|
error: expected an array but got: object
|
|
json> (.)[1000] | ., type, length?
|
|
error: expected an array but got: object
|
|
json> (.)[1:3] | ., type, length?
|
|
error: expected an array but got: object
|
|
json> (.)[0:-1] | ., type, length?
|
|
error: expected an array but got: object
|
|
json> (.)[-1000:2000] | ., type, length?
|
|
error: expected an array but got: object
|
|
json> (.)["test"] | ., type, length?
|
|
null
|
|
"null"
|
|
0
|
|
json> [(.)[]] | type, length?
|
|
"array"
|
|
0
|
|
json> (.) | keys
|
|
[]
|
|
json> (.) | has("a")
|
|
false
|
|
json> (.) | has(0)
|
|
error: cannot check whether object has a key: 0
|
|
json> (.) | type
|
|
"object"
|
|
json> (.) | tonumber
|
|
error: tonumber cannot be applied to: object
|
|
json> (.) | tostring
|
|
"{}"
|
|
json> (.) + ""
|
|
error: cannot add: object ({}) and string ("")
|
|
json> (.) + 1
|
|
error: cannot add: object ({}) and number (1)
|
|
json> (.)._start | ., type, length?
|
|
0
|
|
"number"
|
|
0
|
|
json> (.)._stop | ., type, length?
|
|
16
|
|
"number"
|
|
16
|
|
json> (.)._len | ., type, length?
|
|
16
|
|
"number"
|
|
16
|
|
json> (.)._name | ., type, length?
|
|
""
|
|
"string"
|
|
0
|
|
json> (.)._actual | ., type, length?
|
|
{}
|
|
"object"
|
|
0
|
|
json> (.)._sym | ., type, length?
|
|
null
|
|
"null"
|
|
0
|
|
json> (.)._description | ., type, length?
|
|
null
|
|
"null"
|
|
0
|
|
json> (.)._path | ., type, length?
|
|
[]
|
|
"array"
|
|
0
|
|
json> (.)._bits | ., type, length?
|
|
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|
|
|
0x0|7b 7d| |{}| |.: raw bits 0x0-0x1.7 (2)
|
|
"string"
|
|
16
|
|
json> (.)._bytes | ., type, length?
|
|
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|
|
|
0x0|7b 7d| |{}| |.: raw bits 0x0-0x1.7 (2)
|
|
"string"
|
|
2
|
|
json> (.)._error | ., type, length?
|
|
null
|
|
"null"
|
|
0
|
|
json> (.)._unknown | ., type, length?
|
|
false
|
|
"boolean"
|
|
json> (.).a = 1
|
|
{
|
|
"a": 1
|
|
}
|
|
json> (.)[0] = 1
|
|
error: expected an array but got: object
|
|
json> (.).a |= empty
|
|
{}
|
|
json> (.)[0] |= empty
|
|
error: expected an array but got: object
|
|
json> (.) | setpath(["a"]; 1)
|
|
{
|
|
"a": 1
|
|
}
|
|
json> (.) | setpath([0]; 1)
|
|
error: expected an array but got: object ({})
|
|
json> (.) | delpaths([["a"]])
|
|
{}
|
|
json> (.) | delpaths([[0]])
|
|
error: expected an array but got: object ({})
|
|
json> ^D
|