1 #pragma once
2 #ifndef CATA_SRC_TYPE_ID_H
3 #define CATA_SRC_TYPE_ID_H
4 
5 // IWYU pragma: begin_exports
6 #include "int_id.h"
7 #include "string_id.h"
8 // IWYU pragma: end_exports
9 
10 class achievement;
11 using achievement_id = string_id<achievement>;
12 
13 class activity_type;
14 using activity_id = string_id<activity_type>;
15 
16 class ammunition_type;
17 using ammotype = string_id<ammunition_type>;
18 
19 struct ammo_effect;
20 using ammo_effect_id = int_id<ammo_effect>;
21 using ammo_effect_str_id = string_id<ammo_effect>;
22 
23 struct bionic_data;
24 using bionic_id = string_id<bionic_data>;
25 
26 struct body_part_type;
27 using bodypart_id = int_id<body_part_type>;
28 using bodypart_str_id = string_id<body_part_type>;
29 
30 struct construction_category;
31 using construction_category_id = string_id<construction_category>;
32 
33 struct construction_group;
34 using construction_group_str_id = string_id<construction_group>;
35 
36 struct clothing_mod;
37 using clothing_mod_id = string_id<clothing_mod>;
38 
39 class effect_type;
40 using efftype_id = string_id<effect_type>;
41 
42 class scent_type;
43 using scenttype_id = string_id<scent_type>;
44 
45 class ascii_art;
46 using ascii_art_id = string_id<ascii_art>;
47 
48 class disease_type;
49 using diseasetype_id = string_id<disease_type>;
50 
51 class emit;
52 using emit_id = string_id<emit>;
53 
54 class enchantment;
55 using enchantment_id = string_id<enchantment>;
56 
57 class fault;
58 using fault_id = string_id<fault>;
59 
60 struct field_type;
61 using field_type_id = int_id<field_type>;
62 using field_type_str_id = string_id<field_type>;
63 
64 struct furn_t;
65 using furn_id = int_id<furn_t>;
66 using furn_str_id = string_id<furn_t>;
67 
68 class gun_mode;
69 using gun_mode_id = string_id<gun_mode>;
70 
71 class harvest_list;
72 using harvest_id = string_id<harvest_list>;
73 
74 class item_category;
75 using item_category_id = string_id<item_category>;
76 
77 class Item_spawn_data;
78 // note: "dynamic" string id, see string_id_params in string_id.h
79 using item_group_id = string_id<Item_spawn_data>;
80 
81 struct itype;
82 using itype_id = string_id<itype>;
83 
84 class ma_buff;
85 using mabuff_id = string_id<ma_buff>;
86 
87 class martialart;
88 using matype_id = string_id<martialart>;
89 
90 class ma_technique;
91 using matec_id = string_id<ma_technique>;
92 
93 class material_type;
94 using material_id = string_id<material_type>;
95 
96 struct mission_type;
97 using mission_type_id = string_id<mission_type>;
98 
99 struct MOD_INFORMATION;
100 using mod_id = string_id<MOD_INFORMATION>;
101 
102 class monfaction;
103 using mfaction_id = int_id<monfaction>;
104 using mfaction_str_id = string_id<monfaction>;
105 
106 struct MonsterGroup;
107 using mongroup_id = string_id<MonsterGroup>;
108 
109 class morale_type_data;
110 using morale_type = string_id<morale_type_data>;
111 
112 struct mtype;
113 using mtype_id = string_id<mtype>;
114 
115 class npc_class;
116 using npc_class_id = string_id<npc_class>;
117 
118 class faction;
119 using faction_id = string_id<faction>;
120 
121 struct oter_t;
122 using oter_id = int_id<oter_t>;
123 using oter_str_id = string_id<oter_t>;
124 
125 struct oter_type_t;
126 using oter_type_id = int_id<oter_type_t>;
127 using oter_type_str_id = string_id<oter_type_t>;
128 
129 class profession;
130 using profession_id = string_id<profession>;
131 
132 class recipe;
133 using recipe_id = string_id<recipe>;
134 
135 struct requirement_data;
136 using requirement_id = string_id<requirement_data>;
137 
138 class Skill;
139 using skill_id = string_id<Skill>;
140 
141 class SkillDisplayType;
142 using skill_displayType_id = string_id<SkillDisplayType>;
143 
144 struct species_type;
145 using species_id = string_id<species_type>;
146 
147 class spell_type;
148 using spell_id = string_id<spell_type>;
149 
150 class start_location;
151 using start_location_id = string_id<start_location>;
152 
153 class move_mode;
154 using move_mode_id = string_id<move_mode>;
155 
156 struct mutation_category_trait;
157 using mutation_category_id = string_id<mutation_category_trait>;
158 
159 class proficiency;
160 using proficiency_id = string_id<proficiency>;
161 
162 struct ter_t;
163 using ter_id = int_id<ter_t>;
164 using ter_str_id = string_id<ter_t>;
165 
166 class ter_furn_transform;
167 using ter_furn_transform_id = string_id<ter_furn_transform>;
168 
169 class Trait_group;
170 namespace trait_group
171 {
172 using Trait_group_tag = string_id<Trait_group>;
173 // note: "dynamic" string id, see string_id_params in string_id.h
174 } // namespace trait_group
175 
176 struct trap;
177 using trap_id = int_id<trap>;
178 using trap_str_id = string_id<trap>;
179 
180 struct mutation_branch;
181 using trait_id = string_id<mutation_branch>;
182 
183 struct quality;
184 using quality_id = string_id<quality>;
185 
186 class VehicleGroup;
187 using vgroup_id = string_id<VehicleGroup>;
188 
189 class vitamin;
190 using vitamin_id = string_id<vitamin>;
191 
192 class vpart_info;
193 using vpart_id = string_id<vpart_info>;
194 
195 struct vehicle_prototype;
196 using vproto_id = string_id<vehicle_prototype>;
197 
198 struct weather_type;
199 using weather_type_id = string_id<weather_type>;
200 
201 class zone_type;
202 using zone_type_id = string_id<zone_type>;
203 
204 class translation;
205 using snippet_id = string_id<translation>;
206 
207 struct construction;
208 using construction_id = int_id<construction>;
209 using construction_str_id = string_id<construction>;
210 
211 class json_flag;
212 using flag_id = string_id<json_flag>;
213 
214 using json_character_flag = string_id<json_flag>;
215 
216 #endif // CATA_SRC_TYPE_ID_H
217