Mono.CSharp.MethodOrOperator.ConditionalConditions C# (CSharp) Method

ConditionalConditions() public method

Returns true if method has conditional attribute and the conditions is not defined (method is excluded).
public ConditionalConditions ( ) : string[]
return string[]
        public override string[] ConditionalConditions()
        {
            if ((caching_flags & (Flags.Excluded_Undetected | Flags.Excluded)) == 0)
                return null;

            if ((ModFlags & Modifiers.PARTIAL) != 0 && (caching_flags & Flags.Excluded) != 0)
                return new string [0];

            caching_flags &= ~Flags.Excluded_Undetected;
            string[] conditions;

            if (base_method == null) {
                if (OptAttributes == null)
                    return null;

                Attribute[] attrs = OptAttributes.SearchMulti (Module.PredefinedAttributes.Conditional);
                if (attrs == null)
                    return null;

                conditions = new string[attrs.Length];
                for (int i = 0; i < conditions.Length; ++i)
                    conditions[i] = attrs[i].GetConditionalAttributeValue ();
            } else {
                conditions = base_method.MemberDefinition.ConditionalConditions();
            }

            if (conditions != null)
                caching_flags |= Flags.Excluded;

            return conditions;
        }