136#define SKSE_FORMTRAITS(a_elem) \
137 case a_elem::FORMTYPE: \
138 if constexpr (std::is_convertible_v<const a_elem*, const T*>) { \
139 return static_cast<const a_elem*>(this); \
145 template <
class T,
class>
148 return const_cast<T*
>(
149 static_cast<const TESForm*
>(
this)->As<T>());
152 template <
class T,
class>
294#undef SKSE_FORMTRAITS
Definition ActorValueInfo.h:19
Definition AlchemyItem.h:24
Definition ArrowProjectile.h:12
Definition BGSAcousticSpace.h:9
Definition BGSAddonNode.h:28
Definition BGSApparatus.h:14
Definition BGSArtObject.h:12
Definition BGSAssociationType.h:10
Definition BGSBodyPartData.h:83
Definition BGSCameraPath.h:29
Definition BGSCameraShot.h:14
Definition BGSCollisionLayer.h:15
Definition BGSConstructibleObject.h:11
Definition BGSDebris.h:40
Definition BGSDefaultObjectManager.h:988
Definition BGSDialogueBranch.h:10
Definition BGSDualCastData.h:31
Definition BGSEncounterZone.h:43
Definition BGSEquipSlot.h:10
Definition BGSExplosion.h:53
Definition BGSHazard.h:44
Definition BGSHeadPart.h:17
Definition BGSIdleMarker.h:14
Definition BGSImpactData.h:16
Definition BGSImpactDataSet.h:13
Definition BGSKeyword.h:10
Definition BGSLensFlare.h:12
Definition BGSLightingTemplate.h:11
Definition BGSLocation.h:68
Definition BGSLocationRefType.h:9
Definition BGSMaterialObject.h:16
Definition BGSMaterialType.h:12
Definition BGSMessage.h:17
Definition BGSMovableStatic.h:28
Definition BGSMovementType.h:11
Definition BGSMusicType.h:13
Definition BGSOutfit.h:11
Definition BGSProjectile.h:79
Definition BGSRagdoll.h:15
Definition BGSReferenceEffect.h:9
Definition BGSRelationship.h:9
Definition BGSReverbParameters.h:12
Definition BGSShaderParticleGeometryData.h:18
Definition BGSSoundCategory.h:14
Definition BGSSoundOutput.h:12
Definition BGSStaticCollection.h:12
Definition BGSStoryManagerBranchNode.h:10
Definition BGSStoryManagerEventNode.h:36
Definition BGSStoryManagerQuestNode.h:11
Definition BGSTalkingActivator.h:9
Definition BGSTextureSet.h:16
Definition BGSVoiceType.h:25
Definition BGSVolumetricLighting.h:12
Definition BarrierProjectile.h:10
Definition BeamProjectile.h:16
Definition ConeProjectile.h:15
Definition EffectSetting.h:24
Definition EnchantmentItem.h:10
Definition FlameProjectile.h:9
Definition GrenadeProjectile.h:11
Definition IngredientItem.h:24
Definition MissileProjectile.h:10
Definition NavMeshInfoMap.h:19
Definition SpellItem.h:16
Definition TESClimate.h:13
Definition TESCombatStyle.h:65
Definition TESEffectShader.h:182
Definition TESFaction.h:120
Definition TESFurniture.h:11
Definition TESGlobal.h:10
Definition TESImageSpace.h:10
Definition TESImageSpaceModifier.h:111
Definition TESLandTexture.h:17
Definition TESLevCharacter.h:14
Definition TESLevItem.h:12
Definition TESLevSpell.h:12
Definition TESLoadScreen.h:12
Definition TESObjectACTI.h:22
Definition TESObjectANIO.h:13
Definition TESObjectARMA.h:28
Definition TESObjectARMO.h:37
Definition TESObjectBOOK.h:66
Definition TESObjectCELL.h:116
Definition TESObjectCONT.h:40
Definition TESObjectDOOR.h:19
Definition TESObjectLAND.h:46
Definition TESObjectLIGH.h:66
Definition TESObjectMISC.h:28
Definition TESObjectREFR.h:112
Definition TESObjectSTAT.h:30
Definition TESObjectTREE.h:53
Definition TESObjectWEAP.h:79
Definition TESPackage.h:248
Definition TESQuest.h:189
Definition TESRegion.h:53
Definition TESSoulGem.h:10
Definition TESTopic.h:135
Definition TESTopicInfo.h:42
Definition TESWeather.h:17
Definition TESWordOfPower.h:13
Definition TESWorldSpace.h:118
Definition AbsorbEffect.h:6