// --- private --- private void RegisterWellKnownTypes() { { Predicate <Type> dictTypePred = (type) => { return(GenericTypeUtil.EqualsGenericIDictionary(type)); }; _predToWrapperFactory[dictTypePred] = new IDictionaryWrapperFactory(); } { Predicate <Type> assocColTypePred = (type) => { return(GenericTypeUtil.EqualsGenericAssociationCollection(type)); }; _predToWrapperFactory[assocColTypePred] = new AssociationCollectionWrapperFactory(); } { Predicate <Type> colTypePred = (type) => { return(GenericTypeUtil.EqualsGenericCollection(type)); }; _predToWrapperFactory[colTypePred] = new CollectionWrapperFactory(); } { Predicate <Type> listTypePred = (type) => { return(GenericTypeUtil.EqualsGenericIList(type)); }; _predToWrapperFactory[listTypePred] = new IListWrapperFactory(); } { Predicate <Type> colTypePred = (type) => { return(GenericTypeUtil.EqualsGenericICollection(type)); }; _predToWrapperFactory[colTypePred] = new IListWrapperFactory(); } }