11using System ;
2- using Elympics . Weaving ;
32using Mono . Cecil ;
43using UnityEngine ;
54
@@ -66,13 +65,15 @@ public bool EffectsDefintion(DefinitionType type)
6665 /// Invoked whenever we start editing a module. Used to populate our
6766 /// helper functions
6867 /// </summary>
69- public virtual void OnBeforeModuleEdited ( ModuleDefinition moduleDefinition , Log log )
68+ public void OnBeforeModuleEdited ( ModuleDefinition moduleDefinition , Log log )
7069 {
7170 if ( m_RequiredScriptingSymbols . isActive )
7271 {
7372 m_Log = log ;
7473 m_ActiveModule = moduleDefinition ;
7574 Log ( "Visiting module" ) ;
75+
76+ StartVisiting ( moduleDefinition ) ;
7677 }
7778 else
7879 {
@@ -83,21 +84,21 @@ public virtual void OnBeforeModuleEdited(ModuleDefinition moduleDefinition, Log
8384 /// <summary>
8485 /// Invoked when we have finished editing a module
8586 /// </summary>
86- public virtual void OnModuleEditComplete ( ModuleDefinition moduleDefinition )
87+ public void OnModuleEditComplete ( ModuleDefinition moduleDefinition )
8788 {
88- var processedAttribute = new CustomAttribute ( moduleDefinition
89- . ImportReference ( typeof ( ProcessedByElympicsAttribute ) . GetConstructor ( Array . Empty < Type > ( ) ) ) ) ;
90- moduleDefinition . Assembly . CustomAttributes . Add ( processedAttribute ) ;
89+ FinishVisiting ( moduleDefinition ) ;
9190
9291 m_ActiveModule = null ;
9392 Log ( "Module visitation complete" ) ;
9493 }
9594
95+ protected virtual void StartVisiting ( ModuleDefinition moduleDefinition ) { }
9696 public virtual void VisitModule ( ModuleDefinition moduleDefinition ) { }
9797 public virtual void VisitType ( TypeDefinition typeDefinition ) { }
9898 public virtual void VisitMethod ( MethodDefinition methodDefinition ) { }
9999 public virtual void VisitField ( FieldDefinition fieldDefinition ) { }
100100 public virtual void VisitProperty ( PropertyDefinition propertyDefinition ) { }
101+ protected virtual void FinishVisiting ( ModuleDefinition moduleDefinition ) { }
101102
102103 #region -= Logging =-
103104 /// <summary>
0 commit comments