4.2. Source Files¶
-
HeaderFile <-
¶IncludeStatement
*
HeaderFileElement
+
-
HeaderFileElement <-
¶TypeDefinition
/FunctionDeclaration
/VariableDefinition
/VariableDeclaration
A Crowbar header file defines an API boundary, either at the surface of a library or between pieces of a library or application.
IncludeStatement
s can only appear at the beginning of the header file, and header files cannot define behavior directly. Conventionally, a header file has a.hro
file extension.
-
ImplementationFile <-
¶IncludeStatement
*
ImplementationFileElement
+
-
ImplementationFileElement <-
¶TypeDefinition
/VariableDefinition
/FunctionDefinition
A Crowbar implementation file defines the actual behavior of some piece of a library or application. It can also define internal types, functions, and variables.
IncludeStatement
s can only appear at the beginning of the implementation file. Conventionally, an implementation file has a.cro
file extension.