Skip to content

More public classes can be added to so_5/fwd.hpp #106

Description

@eao197

There are project where long compilation times is the problem. One way to reduce that time is to avoid inclusion of headers with full definitions of classes and templates.

SObjectizer is not fully adopted to such a case right now. The canonical way of using SO-5 is to include <so_5/all.hpp>, but this header file adds full definitions for a lot of stuff (like environment_t, coop_t, agent_t, mchain_t and so on). It's an overkill if a consumer just want to have a forward definition for a couple of classes (like environment_t and agent_t).

There is the so_5/fwd.h file, but it has just a few forward declarations. It seems that the content of this file may be extended. For example, it may contain forward declarations for abstract_message_chain_t (may be with mchain_t), disp_binder_t and so on.

In such a case it will be possible to include just <so_5/fwd.hpp> instead of <so_5/all.hpp> and avoid degradation of compilation time for some projects.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions