You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
|. | smallint | An integer in the range: [0, 255]|
36
-
|- | smallint signed | An integer in the range: [-128, 127]|
37
-
|: | int | An integer in the range: [0, 4,294,967,295]|
38
-
|; | int signed | An integer in the range: [-2,147,483,647, 2,147,483,647]|
39
-
|% | float | A 32-bit floating point value |
40
-
|? | binary string | the next line contains binary data (often called a blob) |
32
+
|`+`| String | a string |
33
+
|`!`| Response Code | a response code |
34
+
|`$` (reserved)| JSON | a `JSON` value |
35
+
|`.` (reserved)| smallint | An integer in the range: [0, 255]|
36
+
|`-` (reserved)| smallint signed | An integer in the range: [-128, 127]|
37
+
|`:`| int | An integer in the range: [0, 4,294,967,295]|
38
+
|`;` (reserved)| int signed | An integer in the range: [-2,147,483,647, 2,147,483,647]|
39
+
|`%` (reserved)| float | A 32-bit floating point value |
40
+
|`?`| binary string | the next line contains binary data (often called a blob) |
41
41
42
42
Do keep the matching for this symbol _non-exhaustive_ since we might add more types in future revisions of the protocol.
43
43
@@ -89,10 +89,13 @@ A flat array is currently a response specific data type (only sent by the server
89
89
### Typed array
90
90
91
91
A typed array is like a flat array, but with the exception that it can only hold
92
-
two types: either a [simple type](#simple-types) or a `NUL`. You can think of it to
93
-
be like: there is either an element of one type -- or there is no element. Since
94
-
this array just has one type -- unlike flat arrays, they don't have any tsymbol
95
-
for every element.
92
+
two types: either a [simple type](#simple-types) or a `NUL`. Since this array just has a specific type in its declaration, unlike flat arrays, `tsymbol`s are not required.
93
+
94
+
You can think of it to be like:
95
+
96
+
- there is either no element (integer value of `0`; also called `NULL`)
97
+
- there is an error (integer value of `21`; also called `NAK`)
98
+
- or there is an element of the declared type
96
99
97
100
Say a programming language represents an array like:
98
101
@@ -123,8 +126,8 @@ Line-by-line explanation:
123
126
-`happened\n`, the element itself
124
127
125
128
:::note
126
-
A typed array is currently a response specific data type (only sent by the server and never by the client). The `NULL`s correspond to the cases when the server can't find the requested
127
-
item.
129
+
A typed array is currently a response specific data type (only sent by the server and never by the client). The `NULL`s correspond to the cases when the server can't find the requested item.
130
+
The `NAK` is context dependent.
128
131
:::
129
132
130
133
### Any array
@@ -137,7 +140,7 @@ may sound -- `AnyArray`s are extremely performant. Also, **no element in an `Any
137
140
138
141
If you have a programming language that represents a **singly-typed** array like:
0 commit comments