public static ArrayType Instance(CilType type) { if (type == null) { return(ReferenceType); } if (ArrayMap.ContainsKey(type)) { return(ArrayMap[type]); } var result = new ArrayType(type); ArrayMap.Add(type, result); return(result); }
public void Add <T>(Func <T> func) { ArrayMap.Add(typeof(T), () => new[] { func.Invoke() }.Select(e => (object)e)); }
public void Add <T>(Func <IEnumerable <T> > func) { ArrayMap.Add(typeof(T), () => func.Invoke().Select(e => (object)e)); }