// This will execute after OnFindRange. public override void PreExecute(RefactorCommand[] commands, int i) { Contract.Requires(commands != null, "commands is null"); // If there are no bases and we're the last AddBase command then we // need to use a colon for the prefix, otherwise we need to use a comma. if (m_type.Bases.Names.Length == 0) { if (i + 1 < commands.Length && Array.FindIndex(commands, i + 1, c => c is AddBaseType) >= 0) m_prefix = ", "; else m_prefix = " : "; } }
// Allows commands to change what they insert (but not where they insert) based on // the other commands to be executed. I is the index of this. Commands after index // i are executed after this. public virtual void PreExecute(RefactorCommand[] commands, int i) { Contract.Requires(commands != null, "commands is null"); }