Home | History | Annotate | Download | only in meta

Lines Matching refs:Ps

528   // The actual set of requirements is SetDifference(RsSuperset, Ps)
532 using Ps = PsParam;
534 // - If a type is in SetDifference(RsSuperset, Ps) and not here: it's required as const only
535 // - If a type is in SetDifference(RsSuperset, Ps) and also here: it's required as non-const
536 // - If a type is in Ps and not here: it's provided as const only
537 // - If a type is in Ps and also here: it's provided as non-const
547 // * all types in Ps are at the head of one (and only one) Dep.
556 // * Each element of NonConstRsPs is in RsSuperset or in Ps (or both)
586 using type = typename Comp::Ps;
840 template <typename... Ps>
843 CheckNoRepeatedTypes(RemoveConstFromTypes(Vector<Ps...>)),
844 PropagateError(CheckNormalizedTypes(RemoveConstFromTypes(Vector<Ps...>)),
845 PropagateError(CheckNoRequiredTypesInComponentArguments(Vector<Ps...>),
846 ConsComp(EmptySet, VectorToSetUnchecked(RemoveConstFromTypes(Vector<Ps...>)),
847 RemoveConstTypes(Vector<Ps...>),
849 Vector<Pair<Ps, Vector<>>...>,
855 template <typename... Rs, typename... Ps>
856 struct apply<Type<Required<Rs...>>, Ps...> {
858 CheckNoRepeatedTypes(RemoveConstFromTypes(Vector<Type<Rs>..., Ps...>)),
859 PropagateError(CheckNormalizedTypes(RemoveConstFromTypes(Vector<Type<Rs>..., Ps...>)),
860 PropagateError(CheckNoRequiredTypesInComponentArguments(Vector<Ps...>),
862 VectorToSetUnchecked(RemoveConstFromTypes(Vector<Ps...>)),
863 RemoveConstTypes(Vector<Type<Rs>..., Ps...>),
865 Vector<Pair<Ps, Vector<Type<Rs>...>>...>,
884 using type = If(And(IsInSet(T, typename Comp::Ps), Not(IsInSet(T, typename Comp::NonConstRsPs))),
898 using Comp1 = ConsComp(FoldVector(NewRequirementsVector, AddToSet, typename Comp::RsSuperset), typename Comp::Ps,
913 FoldVector(CRequirements, AddToSet, typename Comp::RsSuperset), AddToSetUnchecked(typename Comp::Ps, C),
920 using type = If(IsInSet(C, typename Comp::Ps), ConstructError(TypeAlreadyBoundErrorTag, C),
943 using type = ConsComp(typename Comp::RsSuperset, typename Comp::Ps, typename Comp::NonConstRsPs,
963 using CompRs = SetDifference(typename Comp::RsSuperset, typename Comp::Ps);
964 using EntailedCompRs = SetDifference(typename EntailedComp::RsSuperset, typename EntailedComp::Ps);
966 using CommonPs = SetIntersection(typename Comp::Ps, typename EntailedComp::Ps);
968 If(Not(IsContained(typename EntailedComp::Ps, typename Comp::Ps)),
970 SetToVector(SetDifference(typename EntailedComp::Ps, typename Comp::Ps))),