1#[derive(Debug, Clone, Copy, PartialEq, Eq)]
20pub enum Family {
21 Element,
23 ResourceOrProcess,
26}
27
28#[derive(Debug, Clone, Copy, PartialEq, Eq)]
30pub struct ElementType {
31 pub type_name: &'static str,
33 pub arity: usize,
35 pub predefined_slot: usize,
37 pub predefined_optional: bool,
39 pub fallback_attr: &'static str,
41 pub fallback_slot: usize,
43 pub family: Family,
45 pub members: &'static [&'static str],
47}
48
49mod a_c;
50mod d_f;
51mod g_k;
52mod l_p;
53mod q_s;
54mod t_z;
55
56pub use a_c::*;
57pub use d_f::*;
58pub use g_k::*;
59pub use l_p::*;
60pub use q_s::*;
61pub use t_z::*;
62
63pub const ALL: &[ElementType] = &[
65 IFCACTUATORTYPE,
66 IFCAIRTERMINALBOXTYPE,
67 IFCAIRTERMINALTYPE,
68 IFCAIRTOAIRHEATRECOVERYTYPE,
69 IFCALARMTYPE,
70 IFCAUDIOVISUALAPPLIANCETYPE,
71 IFCBEAMTYPE,
72 IFCBEARINGTYPE,
73 IFCBOILERTYPE,
74 IFCBUILDINGELEMENTPARTTYPE,
75 IFCBUILDINGELEMENTPROXYTYPE,
76 IFCBURNERTYPE,
77 IFCCABLECARRIERFITTINGTYPE,
78 IFCCABLECARRIERSEGMENTTYPE,
79 IFCCABLEFITTINGTYPE,
80 IFCCABLESEGMENTTYPE,
81 IFCCAISSONFOUNDATIONTYPE,
82 IFCCHILLERTYPE,
83 IFCCHIMNEYTYPE,
84 IFCCOILTYPE,
85 IFCCOLUMNTYPE,
86 IFCCOMMUNICATIONSAPPLIANCETYPE,
87 IFCCOMPRESSORTYPE,
88 IFCCONDENSERTYPE,
89 IFCCONSTRUCTIONEQUIPMENTRESOURCETYPE,
90 IFCCONSTRUCTIONMATERIALRESOURCETYPE,
91 IFCCONSTRUCTIONPRODUCTRESOURCETYPE,
92 IFCCONTROLLERTYPE,
93 IFCCONVEYORSEGMENTTYPE,
94 IFCCOOLEDBEAMTYPE,
95 IFCCOOLINGTOWERTYPE,
96 IFCCOURSETYPE,
97 IFCCOVERINGTYPE,
98 IFCCREWRESOURCETYPE,
99 IFCCURTAINWALLTYPE,
100 IFCDAMPERTYPE,
101 IFCDISCRETEACCESSORYTYPE,
102 IFCDISTRIBUTIONBOARDTYPE,
103 IFCDISTRIBUTIONCHAMBERELEMENTTYPE,
104 IFCDOORTYPE,
105 IFCDUCTFITTINGTYPE,
106 IFCDUCTSEGMENTTYPE,
107 IFCDUCTSILENCERTYPE,
108 IFCELECTRICAPPLIANCETYPE,
109 IFCELECTRICDISTRIBUTIONBOARDTYPE,
110 IFCELECTRICFLOWSTORAGEDEVICETYPE,
111 IFCELECTRICFLOWTREATMENTDEVICETYPE,
112 IFCELECTRICGENERATORTYPE,
113 IFCELECTRICMOTORTYPE,
114 IFCELECTRICTIMECONTROLTYPE,
115 IFCELEMENTASSEMBLYTYPE,
116 IFCENGINETYPE,
117 IFCEVAPORATIVECOOLERTYPE,
118 IFCEVAPORATORTYPE,
119 IFCEVENTTYPE,
120 IFCFANTYPE,
121 IFCFASTENERTYPE,
122 IFCFILTERTYPE,
123 IFCFIRESUPPRESSIONTERMINALTYPE,
124 IFCFLOWINSTRUMENTTYPE,
125 IFCFLOWMETERTYPE,
126 IFCFOOTINGTYPE,
127 IFCFURNITURETYPE,
128 IFCGEOGRAPHICELEMENTTYPE,
129 IFCHEATEXCHANGERTYPE,
130 IFCHUMIDIFIERTYPE,
131 IFCIMPACTPROTECTIONDEVICETYPE,
132 IFCINTERCEPTORTYPE,
133 IFCJUNCTIONBOXTYPE,
134 IFCKERBTYPE,
135 IFCLABORRESOURCETYPE,
136 IFCLAMPTYPE,
137 IFCLIGHTFIXTURETYPE,
138 IFCLIQUIDTERMINALTYPE,
139 IFCMECHANICALFASTENERTYPE,
140 IFCMEDICALDEVICETYPE,
141 IFCMEMBERTYPE,
142 IFCMOBILETELECOMMUNICATIONSAPPLIANCETYPE,
143 IFCMOORINGDEVICETYPE,
144 IFCMOTORCONNECTIONTYPE,
145 IFCNAVIGATIONELEMENTTYPE,
146 IFCOUTLETTYPE,
147 IFCPAVEMENTTYPE,
148 IFCPILETYPE,
149 IFCPIPEFITTINGTYPE,
150 IFCPIPESEGMENTTYPE,
151 IFCPLATETYPE,
152 IFCPROCEDURETYPE,
153 IFCPROTECTIVEDEVICETRIPPINGUNITTYPE,
154 IFCPROTECTIVEDEVICETYPE,
155 IFCPUMPTYPE,
156 IFCRAILTYPE,
157 IFCRAILINGTYPE,
158 IFCRAMPFLIGHTTYPE,
159 IFCRAMPTYPE,
160 IFCREINFORCINGBARTYPE,
161 IFCREINFORCINGMESHTYPE,
162 IFCROOFTYPE,
163 IFCSANITARYTERMINALTYPE,
164 IFCSENSORTYPE,
165 IFCSHADINGDEVICETYPE,
166 IFCSIGNTYPE,
167 IFCSIGNALTYPE,
168 IFCSLABTYPE,
169 IFCSOLARDEVICETYPE,
170 IFCSPACEHEATERTYPE,
171 IFCSPACETYPE,
172 IFCSPATIALZONETYPE,
173 IFCSTACKTERMINALTYPE,
174 IFCSTAIRFLIGHTTYPE,
175 IFCSTAIRTYPE,
176 IFCSUBCONTRACTRESOURCETYPE,
177 IFCSWITCHINGDEVICETYPE,
178 IFCSYSTEMFURNITUREELEMENTTYPE,
179 IFCTANKTYPE,
180 IFCTASKTYPE,
181 IFCTENDONANCHORTYPE,
182 IFCTENDONCONDUITTYPE,
183 IFCTENDONTYPE,
184 IFCTRACKELEMENTTYPE,
185 IFCTRANSFORMERTYPE,
186 IFCTRANSPORTELEMENTTYPE,
187 IFCTUBEBUNDLETYPE,
188 IFCUNITARYCONTROLELEMENTTYPE,
189 IFCUNITARYEQUIPMENTTYPE,
190 IFCVALVETYPE,
191 IFCVEHICLETYPE,
192 IFCVIBRATIONDAMPERTYPE,
193 IFCVIBRATIONISOLATORTYPE,
194 IFCWALLTYPE,
195 IFCWASTETERMINALTYPE,
196 IFCWINDOWTYPE,
197];