These defines include or declare other Concepts used for the current one.
This includes any files which are needed by the current concept which are Concepts themselves. In the case of the WorldObject Concept, has the component of Position and Resource. So, this turns into:
#include "/usr/local/include/chasm_0.3/vocab/Position.chasm.h" #include "/usr/local/include/chasm_0.3/vocab/Resource.chasm.h"
This includes the file for the parent of this concept.
This just specifies that the components are classes. By only defining them as classes and not including the files, this removes circular inheritance problems in header files as well as making compilation faster. For the above example in WorldObject, this generates:
class Position; class Resource;