string_physical_type¶
How a string is represented in memory.
Declaration¶
Syntax¶
string_physical_type = DescriptorString | CChar
Values¶
Value |
Meaning |
|---|---|
|
a descriptor, |
|
a bare |
Return values¶
None. An enumeration value is not evaluated.
Description¶
The physical type is separate from the logical type: both representations hold
the same characters.
StringPhysicalCast moves between
them, taking the data pointer out of a descriptor in one direction and
wrapping a pointer in a descriptor with size and capacity set to -1 in
the other, marking a string that must not be extended.
A local variable may not have the CChar physical type: the verifier rejects
it, because a local string owns its storage and needs a descriptor to describe
it.