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

TryResolveClassVariable() публичный Метод

public TryResolveClassVariable ( string name, object &value ) : RubyModule
name string
value object
Результат RubyModule
        public RubyModule TryResolveClassVariable(string/*!*/ name, out object value) {
            Assert.NotNull(name);

            RubyModule result = null;
            object constValue = null;

            using (Context.ClassHierarchyLocker()) {
                if (ForEachAncestor(delegate(RubyModule/*!*/ module) {
                    if (module._classVariables != null && module._classVariables.TryGetValue(name, out constValue)) {
                        result = module;
                        return true;
                    }

                    return false;
                })) {
                    value = constValue;
                    return result;
                }
            }

            value = null;
            return null;
        }

Usage Example

Пример #1
0
        public static bool ClassVariableDefined(RubyModule /*!*/ self, [DefaultProtocol] string /*!*/ variableName)
        {
            RubyUtils.CheckClassVariableName(variableName);
            object value;

            return(self.TryResolveClassVariable(variableName, out value) != null);
        }
All Usage Examples Of IronRuby.Builtins.RubyModule::TryResolveClassVariable
RubyModule