Example #1
0
        public bool HasFlags(BaseAspect aspect)
        {
            if (aspect == null || aspect.Aspects == AspectFlags.None || Aspects == AspectFlags.None)
            {
                return(false);
            }

            if (Aspects == aspect.Aspects)
            {
                return(true);
            }

            return(MatchAnyAspect &&
                   Aspects.EnumerateValues <AspectFlags>(true).Any(a => a != AspectFlags.None && aspect.Aspects.GetFlag(a)));
        }