private static T[] VkObjectJArrayCaster <T>(JArray array, InitializerDelegate <T> initializer) where T : VkObject, new() { if (array == null) { return(new T[0]); } var result = new T[array.Count]; for (var i = 0; i < array.Count; i++) { result[i] = new T(); initializer(result[i], array[i]); } return(result); }
public void AddInitializer(InitializerDelegate initializer) { m_initializers.Add(initializer); }
/// <summary> /// Setup the container but don't initialise the value yet. /// </summary> /// <param name="initializer"> /// The initialiser delegate to call when first used. /// </param> public LazyValue(InitializerDelegate initializer) { _initializer = initializer; }
/// <exclude /> public ResourceLocker(T resources, InitializerDelegate initializerDelegate) : this(resources, initializerDelegate, true) { }
/// <exclude /> public ResourceLocker(T resources, InitializerDelegate initializerDelegate, bool requireCoreReaderLock) { _resources = resources; _initializerDelegate = initializerDelegate; _requireCoreReaderLock = requireCoreReaderLock; }