Skip to content
This repository was archived by the owner on Aug 31, 2021. It is now read-only.

Commit 1db7ae2

Browse files
committed
LCB: Second draft of type naming specification.
Add more types, some of which we're not going to implement straight away.
1 parent f858e7b commit 1db7ae2

File tree

1 file changed

+19
-4
lines changed

1 file changed

+19
-4
lines changed

docs/specs/lcb-type-naming.md

Lines changed: 19 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,9 @@ These types require a consistent naming convention, in order to
88
clearly indicate where the types come from and what they are intended
99
to be used for.
1010

11+
Some of the types listed in this document will not be available
12+
immediately; however, they may be implemented in the future.
13+
1114
## Mixed-case naming
1215

1316
The current Builder compiler cannot recognise any symbol that is also
@@ -41,10 +44,19 @@ platform prefix.
4144
* `Int<BITS>`: An signed integer represented using the specified
4245
number of bits (e.g. `Int8`).
4346

44-
* `UIntSize`: An unsigned integer representing a memory extent
45-
(e.g. the length of a buffer). This is used whenever a number
46-
that's proportional to the size of memory is required. On most
47-
platforms, its size will be equal to the size of a pointer.
47+
* `IntSize`, `UIntSize`: An (unsigned) integer representing a memory
48+
extent (e.g. the length of a buffer). This is used whenever a
49+
number that's proportional to the size of memory is required. On
50+
most platforms, its size will be equal to the size of a `Pointer`.
51+
52+
* `IntPointer`, `UIntPointer`: An (unsigned) integer with the same
53+
number of bits as a `Pointer`.
54+
55+
* `Float<BITS>`: A IEEE-754 binary floating point value represented
56+
using the specified number of bits (e.g. `Float32`).
57+
58+
* `Float<BITS>Dec`: A decimal floating point value represented using
59+
the specified number of bits (e.g. `Float32Dec`).
4860

4961
## LiveCode Core types
5062

@@ -92,5 +104,8 @@ Many applications require nul-terminated string buffers.
92104
* `ZStringNative`: Nul-terminated string buffer containing compact
93105
character data with 8 bits per character.
94106

107+
* `ZStringUTF8`: Nul-terminated string buffer containing UTF-8
108+
character data.
109+
95110
* `ZStringUTF16`: Nul-terminated string buffer containing UTF-16
96111
character data.

0 commit comments

Comments
 (0)