class IMMUTABLE_CLASS_LAYOUT < $LAYOUT
****
A layout corresponding to a Sather immutable class object.


Ancestors
$LAYOUT $STR TP_LAYOUT



Public


Readable Attributes
attr dependencies:FLIST{$LAYOUT};
attr l:AM_OB_DEF;
**** The layout from the AM form.
attr prog:PROG;
attr str:STR;

Writable Attributes
attr dependencies:FLIST{$LAYOUT};
attr l:AM_OB_DEF;
**** The layout from the AM form.
attr prog:PROG;

Readonly Shareds
shared layouts:FSET{SAME};
**** Registry of all layouts of this type

Writable Shareds
shared layouts:FSET{SAME};
**** Registry of all layouts of this type

Features
create(tp:$TP,prog:PROG):SAME
makestr:STR
sorted_fields(map:FMAP{IDENT,$TP}):LAYOUT_ARR
typedef(c:CGEN):STR


Private

make_dependencies
attr str:STR;
attr tp:$TP;
**** The type this layout is for
attr tp:$TP;
**** The type this layout is for