Example #1
0
 public void Revoke(RuleElement element)
 {
     int refs;
     if (this.grants.TryGetValue(element, out refs))
     {
         refs = refs - 1;
         if (refs == 0)
         {
             MaybeSetInternalProperty(null, element.Type);
             this.grants.Remove(element);
             element.Revoke(this);
         }
         else
         {
             this.grants[element] = refs;
         }
     }
 }