2.3.4.2.3.2 MODULE Record

Specifies data for a module. Source code for the module can be found in the ModuleStream (section 2.3.4.3) named as specified in StreamNameRecord. Every MODULE (section 2.3.4.2.3.2) MUST have a corresponding <ProjectModule> specified in PROJECT Stream (section 2.3.1).


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

NameRecord (variable)

...

NameUnicodeRecord (variable)

...

StreamNameRecord (variable)

...

DocStringRecord (variable)

...

OffsetRecord

...

...

HelpContextRecord

...

...

CookieRecord

...

TypeRecord

...

ReadOnlyRecord (optional)

...

PrivateRecord (optional)

...

Terminator

Reserved

NameRecord (variable): A MODULENAME Record (section 2.3.4.2.3.2.1).

NameUnicodeRecord (variable): A MODULENAMEUNICODE Record (section 2.3.4.2.3.2.2). This field is optional.

StreamNameRecord (variable): A MODULESTREAMNAME Record (section 2.3.4.2.3.2.3).

DocStringRecord (variable): A MODULEDOCSTRING Record (section 2.3.4.2.3.2.4).

OffsetRecord (10 bytes):  A MODULEOFFSET Record (section 2.3.4.2.3.2.5).

HelpContextRecord (10 bytes): A MODULEHELPCONTEXT Record (section 2.3.4.2.3.2.6).

CookieRecord (8 bytes): A MODULECOOKIE Record (section 2.3.4.2.3.2.7).

TypeRecord (6 bytes): A MODULETYPE Record (section 2.3.4.2.3.2.8).

ReadOnlyRecord (6 bytes): A MODULEREADONLY Record (section 2.3.4.2.3.2.9). This field is optional.

PrivateRecord (6 bytes): A MODULEPRIVATE Record (section 2.3.4.2.3.2.10). This field is optional.

Terminator (2 bytes):  An unsigned integer that specifies the end of this record. MUST be 0x002B.

Reserved (4 bytes): MUST be 0x00000000. MUST be ignored.