Skip to main content

steel_registry/
lib.rs

1#![feature(const_trait_impl, const_cmp, derive_const)]
2#![expect(
3    missing_docs,
4    reason = "registry APIs mirror large generated vanilla data surfaces that are not individually documented yet"
5)]
6#![expect(
7    clippy::absolute_paths,
8    clippy::allow_attributes_without_reason,
9    clippy::fn_params_excessive_bools,
10    clippy::items_after_statements,
11    clippy::match_same_arms,
12    clippy::missing_fields_in_debug,
13    clippy::missing_panics_doc,
14    clippy::ref_option,
15    clippy::return_self_not_must_use,
16    clippy::too_many_lines,
17    clippy::trivially_copy_pass_by_ref,
18    clippy::unreadable_literal,
19    clippy::unused_self,
20    reason = "registry model code mirrors vanilla/generated data and keeps existing panic-heavy registry invariants"
21)]
22pub mod attribute;
23pub mod banner_pattern;
24pub mod biome;
25pub mod block_entity_type;
26pub mod blocks;
27pub mod carver;
28pub mod cat_sound_variant;
29pub mod cat_variant;
30pub mod chat_type;
31pub mod chicken_sound_variant;
32pub mod chicken_variant;
33pub mod consume_effect;
34pub mod cow_sound_variant;
35pub mod cow_variant;
36pub mod damage_type;
37pub mod data_component_predicate;
38pub mod data_components;
39pub mod dialog;
40pub mod dimension_type;
41pub mod dye_color;
42pub mod enchantment;
43pub use enchantment::effect as enchantment_effect;
44pub mod entity_data;
45pub mod entity_type;
46pub mod entity_variant;
47pub mod equipment;
48pub mod feature;
49pub mod fluid;
50pub mod frog_variant;
51pub mod game_events;
52pub mod game_rules;
53pub mod instrument;
54pub mod item_predicate;
55pub mod item_stack;
56pub mod item_stack_template;
57pub mod items;
58pub mod jukebox_song;
59pub mod loot_table;
60mod macros;
61pub mod map_decoration_type;
62pub mod menu_type;
63pub mod mob_effect;
64pub use mob_effect::instance as mob_effect_instance;
65pub mod painting_variant;
66pub mod particle_type;
67pub mod pig_sound_variant;
68pub mod pig_variant;
69pub mod poi;
70pub mod position_source;
71pub mod potion;
72pub mod recipe;
73pub mod registry;
74pub use registry::holder;
75pub use registry::holder_set;
76pub use registry::reference as registry_reference;
77pub use registry::*;
78pub mod resolvable_profile;
79pub mod sound_event;
80pub mod stat;
81pub mod steel_ticket_types;
82pub mod structure;
83pub use structure::processor as structure_processor;
84pub use structure::set as structure_set;
85pub use structure::template_pool;
86pub mod ticket_type;
87pub mod timeline;
88pub mod trim_material;
89pub mod trim_pattern;
90pub mod vanilla_ticket_types;
91pub mod villager_profession;
92pub mod villager_type;
93pub mod wolf_sound_variant;
94pub mod wolf_variant;
95pub mod world_clock;
96pub mod zombie_nautilus_variant;
97
98pub use consume_effect::{ConsumeEffectData, ConsumeEffectType, ConsumeEffectTypeRef};
99pub use dye_color::DyeColor;
100pub use entity_variant::{
101    AxolotlVariant, FoxVariant, HorseVariant, LlamaVariant, MooshroomVariant, ParrotVariant,
102    RabbitVariant, SalmonVariant, TropicalFishBase, TropicalFishPattern,
103};
104pub use item_stack_template::ItemStackTemplate;
105pub use mob_effect_instance::{MobEffectInstance, MobEffectInstanceDetails};
106pub use potion::{Potion, PotionEffect, PotionRef};
107pub use resolvable_profile::{
108    PartialProfile, PlayerModelType, PlayerSkinPatch, ProfileProperty, ResolvableProfile,
109    ResolvableProfileContents, StoredGameProfile,
110};
111
112#[expect(warnings)]
113#[rustfmt::skip]
114#[path = "generated/vanilla_attributes.rs"]
115pub mod vanilla_attributes;
116
117#[expect(warnings)]
118#[rustfmt::skip]
119#[path = "generated/vanilla_blocks.rs"]
120pub mod vanilla_blocks;
121
122#[expect(warnings)]
123#[rustfmt::skip]
124#[path = "generated/vanilla_block_tags.rs"]
125pub mod vanilla_block_tags;
126
127#[expect(warnings)]
128#[rustfmt::skip]
129#[path = "generated/vanilla_banner_patterns.rs"]
130pub mod vanilla_banner_patterns;
131
132#[expect(warnings)]
133#[rustfmt::skip]
134#[path = "generated/vanilla_items.rs"]
135pub mod vanilla_items;
136
137#[expect(warnings)]
138#[rustfmt::skip]
139#[path = "generated/vanilla_item_tags.rs"]
140pub mod vanilla_item_tags;
141
142#[expect(warnings)]
143#[rustfmt::skip]
144#[path = "generated/vanilla_biomes.rs"]
145pub mod vanilla_biomes;
146
147#[expect(warnings)]
148#[rustfmt::skip]
149#[path = "generated/vanilla_biome_tags.rs"]
150pub mod vanilla_biome_tags;
151
152#[expect(warnings)]
153#[rustfmt::skip]
154#[path = "generated/vanilla_chat_types.rs"]
155pub mod vanilla_chat_types;
156
157#[expect(warnings)]
158#[rustfmt::skip]
159#[path = "generated/vanilla_trim_patterns.rs"]
160pub mod vanilla_trim_patterns;
161
162#[expect(warnings)]
163#[rustfmt::skip]
164#[path = "generated/vanilla_trim_materials.rs"]
165pub mod vanilla_trim_materials;
166
167#[expect(warnings)]
168#[rustfmt::skip]
169#[path = "generated/vanilla_wolf_variants.rs"]
170pub mod vanilla_wolf_variants;
171
172#[expect(warnings)]
173#[rustfmt::skip]
174#[path = "generated/vanilla_wolf_sound_variants.rs"]
175pub mod vanilla_wolf_sound_variants;
176
177#[expect(warnings)]
178#[rustfmt::skip]
179#[path = "generated/vanilla_pig_variants.rs"]
180pub mod vanilla_pig_variants;
181
182#[expect(warnings)]
183#[rustfmt::skip]
184#[path = "generated/vanilla_pig_sound_variants.rs"]
185pub mod vanilla_pig_sound_variants;
186
187#[allow(warnings)]
188#[rustfmt::skip]
189#[path = "generated/vanilla_chicken_sound_variants.rs"]
190pub mod vanilla_chicken_sound_variants;
191
192#[allow(warnings)]
193#[rustfmt::skip]
194#[path = "generated/vanilla_cat_sound_variants.rs"]
195pub mod vanilla_cat_sound_variants;
196
197#[allow(warnings)]
198#[rustfmt::skip]
199#[path = "generated/vanilla_cow_sound_variants.rs"]
200pub mod vanilla_cow_sound_variants;
201
202#[allow(warnings)]
203#[rustfmt::skip]
204#[path = "generated/vanilla_frog_variants.rs"]
205pub mod vanilla_frog_variants;
206
207#[expect(warnings)]
208#[rustfmt::skip]
209#[path = "generated/vanilla_cat_variants.rs"]
210pub mod vanilla_cat_variants;
211
212#[expect(warnings)]
213#[rustfmt::skip]
214#[path = "generated/vanilla_cow_variants.rs"]
215pub mod vanilla_cow_variants;
216
217#[expect(warnings)]
218#[rustfmt::skip]
219#[path = "generated/vanilla_chicken_variants.rs"]
220pub mod vanilla_chicken_variants;
221
222#[expect(warnings)]
223#[rustfmt::skip]
224#[path = "generated/vanilla_painting_variants.rs"]
225pub mod vanilla_painting_variants;
226
227#[expect(warnings)]
228#[rustfmt::skip]
229#[path = "generated/vanilla_particle_types.rs"]
230pub mod vanilla_particle_types;
231
232#[expect(warnings)]
233#[rustfmt::skip]
234#[path = "generated/vanilla_position_source_types.rs"]
235pub mod vanilla_position_source_types;
236
237#[expect(warnings)]
238#[rustfmt::skip]
239#[path = "generated/vanilla_villager_types.rs"]
240pub mod vanilla_villager_types;
241
242#[expect(warnings)]
243#[rustfmt::skip]
244#[path = "generated/vanilla_villager_professions.rs"]
245pub mod vanilla_villager_professions;
246
247#[expect(warnings)]
248#[rustfmt::skip]
249#[path = "generated/vanilla_dimension_types.rs"]
250pub mod vanilla_dimension_types;
251
252#[expect(warnings)]
253#[rustfmt::skip]
254#[path = "generated/vanilla_damage_types.rs"]
255pub mod vanilla_damage_types;
256
257#[expect(warnings)]
258#[rustfmt::skip]
259#[path = "generated/vanilla_damage_type_tags.rs"]
260pub mod vanilla_damage_type_tags;
261
262#[expect(warnings)]
263#[rustfmt::skip]
264#[path = "generated/vanilla_jukebox_songs.rs"]
265pub mod vanilla_jukebox_songs;
266
267#[expect(warnings)]
268#[rustfmt::skip]
269#[path = "generated/vanilla_instruments.rs"]
270pub mod vanilla_instruments;
271
272#[expect(warnings)]
273#[rustfmt::skip]
274#[path = "generated/vanilla_dialogs.rs"]
275pub mod vanilla_dialogs;
276
277#[expect(warnings)]
278#[rustfmt::skip]
279#[path = "generated/vanilla_dialog_tags.rs"]
280pub mod vanilla_dialog_tags;
281
282#[expect(warnings)]
283#[rustfmt::skip]
284#[path = "generated/vanilla_menu_types.rs"]
285pub mod vanilla_menu_types;
286
287#[expect(warnings)]
288#[rustfmt::skip]
289#[path = "generated/vanilla_mob_effects.rs"]
290pub mod vanilla_mob_effects;
291
292#[expect(warnings)]
293#[rustfmt::skip]
294#[path = "generated/vanilla_map_decoration_types.rs"]
295pub mod vanilla_map_decoration_types;
296
297#[expect(warnings)]
298#[rustfmt::skip]
299#[path = "generated/vanilla_potions.rs"]
300pub mod vanilla_potions;
301
302#[expect(warnings)]
303#[rustfmt::skip]
304#[path = "generated/vanilla_zombie_nautilus_variants.rs"]
305pub mod vanilla_zombie_nautilus_variants;
306
307#[expect(warnings)]
308#[rustfmt::skip]
309#[path = "generated/vanilla_timelines.rs"]
310pub mod vanilla_timelines;
311
312#[expect(warnings)]
313#[rustfmt::skip]
314#[path = "generated/vanilla_timeline_tags.rs"]
315pub mod vanilla_timeline_tags;
316
317#[expect(warnings)]
318#[rustfmt::skip]
319#[path = "generated/vanilla_recipes.rs"]
320pub mod vanilla_recipes;
321
322#[expect(warnings)]
323#[rustfmt::skip]
324#[path = "generated/vanilla_entities.rs"]
325pub mod vanilla_entities;
326
327#[expect(warnings)]
328#[rustfmt::skip]
329#[path = "generated/vanilla_entity_data.rs"]
330pub mod vanilla_entity_data;
331
332#[expect(warnings)]
333#[rustfmt::skip]
334#[path = "generated/vanilla_fluids.rs"]
335pub mod vanilla_fluids;
336
337#[expect(warnings)]
338#[rustfmt::skip]
339#[path = "generated/vanilla_poi_types.rs"]
340pub mod vanilla_poi_types;
341
342#[expect(warnings)]
343#[rustfmt::skip]
344#[path = "generated/vanilla_banner_pattern_tags.rs"]
345pub mod vanilla_banner_pattern_tags;
346
347#[expect(warnings)]
348#[rustfmt::skip]
349#[path = "generated/vanilla_entity_type_tags.rs"]
350pub mod vanilla_entity_type_tags;
351
352#[expect(warnings)]
353#[rustfmt::skip]
354#[path = "generated/vanilla_enchantment_tags.rs"]
355pub mod vanilla_enchantment_tags;
356
357#[expect(warnings)]
358#[rustfmt::skip]
359#[path = "generated/vanilla_potion_tags.rs"]
360pub mod vanilla_potion_tags;
361#[expect(warnings)]
362#[rustfmt::skip]
363#[path = "generated/vanilla_enchantments.rs"]
364pub mod vanilla_enchantments;
365
366#[allow(warnings)]
367#[rustfmt::skip]
368#[path = "generated/vanilla_instrument_tags.rs"]
369pub mod vanilla_instrument_tags;
370
371#[expect(warnings)]
372#[rustfmt::skip]
373#[path = "generated/vanilla_painting_variant_tags.rs"]
374pub mod vanilla_painting_variant_tags;
375
376#[expect(warnings)]
377#[rustfmt::skip]
378#[path = "generated/vanilla_poi_type_tags.rs"]
379pub mod vanilla_poi_type_tags;
380
381#[expect(warnings)]
382#[rustfmt::skip]
383#[path = "generated/vanilla_fluid_tags.rs"]
384pub mod vanilla_fluid_tags;
385
386#[expect(warnings)]
387#[rustfmt::skip]
388#[path = "generated/vanilla_loot_tables.rs"]
389pub mod vanilla_loot_tables;
390
391#[expect(warnings)]
392#[rustfmt::skip]
393#[path = "generated/vanilla_block_entity_types.rs"]
394pub mod vanilla_block_entity_types;
395
396#[expect(warnings)]
397#[rustfmt::skip]
398#[path = "generated/vanilla_game_rules.rs"]
399pub mod vanilla_game_rules;
400
401#[expect(warnings)]
402#[rustfmt::skip]
403#[path = "generated/vanilla_game_events.rs"]
404pub mod vanilla_game_events;
405
406#[expect(warnings)]
407#[rustfmt::skip]
408#[path = "generated/vanilla_level_events.rs"]
409pub mod level_events;
410
411#[expect(warnings)]
412#[rustfmt::skip]
413#[path = "generated/vanilla_sound_events.rs"]
414pub mod sound_events;
415
416#[expect(warnings)]
417#[rustfmt::skip]
418#[path = "generated/vanilla_sound_types.rs"]
419pub mod sound_types;
420
421#[expect(warnings)]
422#[rustfmt::skip]
423#[path = "generated/vanilla_structures.rs"]
424pub mod vanilla_structures;
425
426#[expect(warnings)]
427#[rustfmt::skip]
428#[path = "generated/vanilla_structure_tags.rs"]
429pub mod vanilla_structure_tags;
430
431#[expect(warnings)]
432#[rustfmt::skip]
433#[path = "generated/vanilla_structure_sets.rs"]
434pub mod vanilla_structure_sets;
435
436#[expect(warnings)]
437#[rustfmt::skip]
438#[path = "generated/vanilla_structure_processors.rs"]
439pub mod vanilla_structure_processors;
440
441#[expect(
442    clippy::doc_markdown,
443    clippy::must_use_candidate,
444    reason = "generated vanilla template pool data is emitted by the registry build script"
445)]
446#[rustfmt::skip]
447#[path = "generated/vanilla_template_pools.rs"]
448pub mod vanilla_template_pools;
449
450#[allow(warnings)]
451#[rustfmt::skip]
452#[path = "generated/vanilla_packets.rs"]
453pub mod packets;
454
455#[allow(warnings)]
456#[rustfmt::skip]
457#[path = "generated/vanilla_world_clocks.rs"]
458pub mod vanilla_world_clocks;
459pub mod shared_structs;
460
461#[expect(warnings)]
462#[rustfmt::skip]
463#[path = "generated/vanilla_configured_carvers.rs"]
464pub mod vanilla_configured_carvers;
465
466#[expect(warnings)]
467#[rustfmt::skip]
468#[path = "generated/vanilla_configured_features.rs"]
469pub mod vanilla_configured_features;
470
471#[expect(warnings)]
472#[rustfmt::skip]
473#[path = "generated/vanilla_placed_features.rs"]
474pub mod vanilla_placed_features;
475
476#[expect(warnings)]
477#[rustfmt::skip]
478#[path = "generated/vanilla_custom_stats.rs"]
479pub mod vanilla_custom_stats;