Martin wrote:
On 09/03/2012 21:26, Mark Morgan Lloyd wrote:

but is there any way to define something like an endianness-correcting type, i.e.:

Type TAWSHeader=Record
       ThisSize: WordLE;
..

where by the time ThisSize is accessed any disparity has been corrected?


Not sure if this will be of any use.

but you can always define an assignment incompatible type
   WordLE = record data: Word; end;

and define all required overloaded operators

I think that could be of a lot of use, but I'll need to tinker :-)

Noted your example, but apart from that is there any concise way to define a type such as WordLE with the explicit restriction that it requires an explicit definition of assignment operators (i.e. is never subject to implicit casts or type conversions)? Can this be done such that WordLE has a predefined size even if the assignment has to go via code?

--
Mark Morgan Lloyd
markMLl .AT. telemetry.co .DOT. uk

[Opinions above are the author's, not those of his employers or colleagues]
_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal

Reply via email to