CeresEngine 0.2.0
A game development framework
Loading...
Searching...
No Matches
Forward.hpp
Go to the documentation of this file.
1//
2// CeresEngine - A game development framework
3//
4// Created by Rogiel Sulzbach.
5// Copyright (c) 2018-2022 Rogiel Sulzbach. All rights reserved.
6//
7
8#pragma once
9
11
13
14namespace CeresEngine {
15
16 class MetaItem;
17 class MetaContainer;
18
19 class Type;
20 class TypeInfo;
21
22 class Class;
23 class ClassMember;
24 class ClassConstructor;
25 class ClassMethod;
26 class ClassProperty;
27
28 class Enum;
29 class EnumValue;
30
31 class Box;
32
34 template<typename T> struct GetTypeInfo {
35 static const TypeInfo& get();
36 };
37
38 template<typename T> const TypeInfo& getTypeInfo() {
39 return GetTypeInfo<T>::get();
40 }
41
42 namespace internal {
43 struct TypeTag {};
44 } // namespace internal
46
47 template<typename T> class TUserTypeInfo;
48#define CE_META_CLASS_FRIEND(T) friend class TUserTypeInfo<T>;
49
50} // namespace CeresEngine
Definition Forward.hpp:47
Definition TypeInfo.hpp:36
Definition Application.hpp:19
@ EnumValue
Indicates that the item is an enum value.
@ Class
Indicates that the item is a class.
@ Enum
Indicates that the item is an enum.
const TypeInfo & getTypeInfo()
Definition Forward.hpp:38
Definition Forward.hpp:34
static const TypeInfo & get()
Definition Forward.hpp:43