public void WhereAssignableToType(TypePointcut pointcut) { Where(t => { if (t.Interfaces.Select(i => i.Resolve()).Any(pointcut.MatchFull)) { return(true); } while (true) { if (pointcut.MatchFull(t)) { return(true); } if (t.BaseType == null) { return(false); } t = t.BaseType.Resolve(); } }); }
public virtual void WhereHasCustomAttributeType(TypePointcut pointcut) { Where(p => p.CustomAttributes.Any(a => pointcut.MatchFull(a.AttributeType.Resolve()))); }
public void WhereType(TypePointcut crit) { Where(p => crit.MatchFull(p.PropertyType.Resolve())); }
public void WhereReturnType(TypePointcut crit) { Where(m => crit.MatchFull(m.ReturnType.Resolve())); }
public void WhereHasCustomAttributeType(TypePointcut type) { Where(m => m.CustomAttributes.Any(a => type.MatchFull(a.AttributeType.Resolve()))); }
public void WhereType(TypePointcut crit) { Where(f => crit.MatchFull(f.FieldType.Resolve())); }
public void WhereInType(TypePointcut crit) { typeFilter.WhereAny(crit); }
public void WhereImplementsType(TypePointcut pointcut) { Where(t => t.Interfaces.Select(i => i.Resolve()).Any(pointcut.MatchFull)); }
public void WhereNot(TypePointcut type) { Where(t => !type.MatchFull(t)); }