Beispiel #1
0
 public static Impl FindImpl(IGeneratedStore store)
 {
     while (store?.Parent != null)
     {
         store = store.Parent;                           // walk to the top of the tree
     }
     return(store?.Impl);
 }
Beispiel #2
0
 public static void ImplTakeRead(IGeneratedStore s) => FindImpl(s).TakeRead();
Beispiel #3
0
 public static void ImplInvokeChanged(IGeneratedStore s) => FindImpl(s).InvokeChanged();
Beispiel #4
0
 public static void ImplSignalChanged(IGeneratedStore s) => FindImpl(s).SignalChanged();
Beispiel #5
0
 public static ReaderWriterLockSlim ImplGetWriteSyncObject(IGeneratedStore s) => FindImpl(s)?.WriteSyncObject;
Beispiel #6
0
 public static WaitHandle ImplGetSyncObject(IGeneratedStore s) => FindImpl(s).SyncObject;
Beispiel #7
0
 public Impl(IGeneratedStore store) => generated = store;
Beispiel #8
0
 public static void ImplWriteTo(IGeneratedStore s, ConfigProvider provider) => FindImpl(s).WriteTo(provider);
Beispiel #9
0
 public static void ImplReadFrom(IGeneratedStore s, ConfigProvider provider) => FindImpl(s).ReadFrom(provider);
Beispiel #10
0
 public static IDisposable ImplChangeTransaction(IGeneratedStore s, IDisposable nest) => FindImpl(s).ChangeTransaction(nest);
Beispiel #11
0
 public static void ImplReleaseWrite(IGeneratedStore s) => FindImpl(s).ReleaseWrite();
Beispiel #12
0
 public static void ImplTakeWrite(IGeneratedStore s) => FindImpl(s).TakeWrite();
Beispiel #13
0
 public static void ImplReleaseRead(IGeneratedStore s) => FindImpl(s).ReleaseRead();
 private static IConfigStore Create(Type type, IGeneratedStore parent)
 => GetCreator(type)(parent);
 internal static T Create <T>(IGeneratedStore parent) where T : class => (T)Create(typeof(T), parent);