<PackageReference Include="System.Security.Permissions" Version="10.0.2" />

System.Security.Policy.CodeGroup

public abstract class CodeGroup
Represents the abstract base class from which all implementations of code groups must derive.
namespace System.Security.Policy { public abstract class CodeGroup { public virtual string AttributeString { get; } public IList Children { get; set; } public string Description { get; set; } public IMembershipCondition MembershipCondition { get; set; } public abstract string MergeLogic { get; } public string Name { get; set; } public virtual string PermissionSetName { get; } public PolicyStatement PolicyStatement { get; set; } protected CodeGroup(IMembershipCondition membershipCondition, PolicyStatement policy); public void AddChild(CodeGroup group); public abstract CodeGroup Copy(); protected virtual void CreateXml(SecurityElement element, PolicyLevel level); public void FromXml(SecurityElement e); public void FromXml(SecurityElement e, PolicyLevel level); public bool Equals(CodeGroup cg, bool compareChildren); protected virtual void ParseXml(SecurityElement e, PolicyLevel level); public void RemoveChild(CodeGroup group); public abstract PolicyStatement Resolve(Evidence evidence); public abstract CodeGroup ResolveMatchingCodeGroups(Evidence evidence); public SecurityElement ToXml(); public SecurityElement ToXml(PolicyLevel level); } }