public FunctionsBlock CopyFrom(FunctionsBlock source) { ReturnAfterExecute = source.ReturnAfterExecute; IsAllStartRulesNeeded = source.IsAllStartRulesNeeded; UsedFunctions.Clear(); foreach (var item in source.UsedFunctions) { UsedFunctions.Add((new FunctionContainer()).CopyFrom(item)); } StartRules.Clear(); foreach (var item in source.StartRules) { StartRules.Add((new FunctionBlockStartRule()).CopyFrom(item)); } return(this); }
private void DeleteStartRule(Guid id) { StartRules.Remove(StartRules.Where(sr => sr.Id == id).Single()); }