IronRuby.Builtins.RubyModule.IncludeTraitNoLock C# (CSharp) Метод

IncludeTraitNoLock() приватный Метод

private IncludeTraitNoLock ( Action &initializer, MemberTableState tableState, Action trait ) : void
initializer Action
tableState MemberTableState
trait Action
Результат void
        private void IncludeTraitNoLock(ref Action<RubyModule> initializer, MemberTableState tableState, Action<RubyModule>/*!*/ trait) {
            Assert.NotNull(trait);

            if (tableState == MemberTableState.Uninitialized) {
                if (initializer != null && initializer != EmptyInitializer) {
                    initializer += trait;
                } else {
                    initializer = trait;
                }
            } else {
                // TODO: postpone? hold lock?
                using (Context.ClassHierarchyUnlocker()) {
                    trait(this);
                }
            }
        }
RubyModule