<commit_before>/**
 ** \file object/fwd.hh
 ** \brief Forward declarations of all node-classes of OBJECT
 ** (needed by the visitors)
 */
#ifndef OBJECT_FWD_HH
# define OBJECT_FWD_HH

# include <libport/fwd.hh>
# include <libport/intrusive-ptr.hh>
# include <libport/reserved-vector.hh>

# include <urbi/export.hh>

namespace object
{
  // rObject & objects_type.
  class Object;

  typedef libport::intrusive_ptr<Object> rObject;
  typedef libport::ReservedVector<rObject, 8> objects_type;

# define APPLY_ON_ALL_PRIMITIVES(Macro)			\
  APPLY_ON_ALL_PRIMITIVES_BUT_OBJECT(Macro)		\
  Macro(object,     Object)


# define APPLY_ON_ALL_ROOT_CLASSES_BUT_OBJECT(Macro)		\
  Macro(global,     Global)


# define APPLY_ON_ALL_ROOT_CLASSES(Macro)	\
  APPLY_ON_ALL_ROOT_CLASSES_BUT_OBJECT(Macro)   \
  Macro(object, Object)

  /*
    Help the generation of precompiled symbols.

    SYMBOL(Call)
    SYMBOL(Code)
    SYMBOL(Float)
    SYMBOL(Integer)
    SYMBOL(List)
    SYMBOL(Lobby)
    SYMBOL(Object)
    SYMBOL(Primitive)
    SYMBOL(String)
    SYMBOL(Task)

  */

# define FWD_DECL(Class)                                \
  class Class;                                          \
  typedef libport::intrusive_ptr<Class> r ## Class         \

  FWD_DECL(Barrier);
  FWD_DECL(Code);
  FWD_DECL(Dictionary);
  FWD_DECL(Directory);
  FWD_DECL(Event);
  FWD_DECL(Executable);
  FWD_DECL(File);
  FWD_DECL(Float);
  FWD_DECL(List);
  FWD_DECL(Lobby);
  FWD_DECL(OutputStream);
  FWD_DECL(Path);
  FWD_DECL(Primitive);
  FWD_DECL(Semaphore);
  FWD_DECL(Server);
  FWD_DECL(Socket);
  FWD_DECL(String);
  FWD_DECL(Tag);
  FWD_DECL(Task);
  FWD_DECL(TextOutputStream);

  extern URBI_SDK_API rObject false_class;
  extern URBI_SDK_API rObject nil_class;
  extern URBI_SDK_API rObject true_class;
  extern URBI_SDK_API rObject void_class;
} // namespace object

#endif // !OBJECT_FWD_HH<commit_msg>fwd: macros.<commit_after>/**
 ** \file object/fwd.hh
 ** \brief Forward declarations of all node-classes of OBJECT
 ** (needed by the visitors)
 */
#ifndef OBJECT_FWD_HH
# define OBJECT_FWD_HH

# include <libport/fwd.hh>
# include <libport/intrusive-ptr.hh>
# include <libport/reserved-vector.hh>

# include <urbi/export.hh>

namespace object
{
  // rObject & objects_type.
  class Object;

  typedef libport::intrusive_ptr<Object> rObject;
  typedef libport::ReservedVector<rObject, 8> objects_type;

# define APPLY_ON_ALL_PRIMITIVES(Macro)         \
    Macro(Barrier);                             \
    Macro(Code);                                \
    Macro(Dictionary);                          \
    Macro(Directory);                           \
    Macro(Executable);                          \
    Macro(File);                                \
    Macro(Float);                               \
    Macro(List);                                \
    Macro(Lobby);                               \
    Macro(OutputStream);                        \
    Macro(Path);                                \
    Macro(Primitive);                           \
    Macro(Semaphore);                           \
    Macro(Server);                              \
    Macro(Socket);                              \
    Macro(String);                              \
    Macro(Tag);                                 \
    Macro(Task);                                \
    Macro(TextOutputStream)                     \

# define APPLY_ON_ALL_OBJECTS(Macro)            \
  APPLY_ON_ALL_PRIMITIVES(Macro);               \
  Macro(Event);                                 \


  /*
    Help the generation of precompiled symbols.

    SYMBOL(Call)
    SYMBOL(Code)
    SYMBOL(Float)
    SYMBOL(Integer)
    SYMBOL(List)
    SYMBOL(Lobby)
    SYMBOL(Object)
    SYMBOL(Primitive)
    SYMBOL(String)
    SYMBOL(Task)

  */

# define FWD_DECL(Class)                                \
  class Class;                                          \
  typedef libport::intrusive_ptr<Class> r ## Class         \

  APPLY_ON_ALL_OBJECTS(FWD_DECL);

  extern URBI_SDK_API rObject false_class;
  extern URBI_SDK_API rObject nil_class;
  extern URBI_SDK_API rObject true_class;
  extern URBI_SDK_API rObject void_class;
} // namespace object

#endif // !OBJECT_FWD_HH
{'fraction_non_alphanumeric': 0.09606261859582543, 'fraction_numerical': 0.0004743833017077799, 'mean_word_length': 1.8648097826086956, 'pattern_counts': {'":': 0, '<': 17, '<?xml version=': 0, '>': 17, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '304013', 'n_tokens_mistral': 1421, 'n_tokens_neox': 1363, 'n_words': 228}