当前位置: 首页>>代码示例>>C#>>正文


C# PythonType.TryLookupSlot方法代码示例

本文整理汇总了C#中IronPython.Runtime.Types.PythonType.TryLookupSlot方法的典型用法代码示例。如果您正苦于以下问题:C# PythonType.TryLookupSlot方法的具体用法?C# PythonType.TryLookupSlot怎么用?C# PythonType.TryLookupSlot使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在IronPython.Runtime.Types.PythonType的用法示例。


在下文中一共展示了PythonType.TryLookupSlot方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: TryLookupInBase

        private bool TryLookupInBase(CodeContext context, PythonType pt, string name, object self, out object value) {
            PythonTypeSlot dts;

            if (pt.OldClass == null) {
                // new-style class, or reflected type, lookup slot
                if (pt.TryLookupSlot(context, name, out dts) && 
                    dts.TryGetValue(context, self, DescriptorContext, out value)) {
                    return true;
                }
            } else {
                // old-style class, lookup attribute                
                OldClass dt = pt.OldClass;

                if (PythonOps.TryGetBoundAttr(context, dt, name, out value)) {
                    value = OldClass.GetOldStyleDescriptor(context, value, self, DescriptorContext);
                    return true;
                }
            }
            value = null;
            return false;
        }
开发者ID:CookieEaters,项目名称:FireHTTP,代码行数:21,代码来源:Super.cs

示例2: LookupValue

 private static bool LookupValue(PythonType dt, object instance, SymbolId name, out object value) {
     PythonTypeSlot dts;
     if (dt.TryLookupSlot(DefaultContext.Default, name, out dts) &&
         dts.TryGetValue(DefaultContext.Default, instance, dt, out value)) {
         return true;
     }
     value = null;
     return false;
 }
开发者ID:octavioh,项目名称:ironruby,代码行数:9,代码来源:UserTypeOps.cs

示例3: Get__doc__

        public static object Get__doc__(CodeContext/*!*/ context, PythonType self) {
            PythonTypeSlot pts;
            object res;
            if (self.TryLookupSlot(context, Symbols.Doc, out pts) &&
                pts.TryGetValue(context, null, self, out res)) {
                return res;
            } else if (self.IsSystemType) {
                return PythonTypeOps.GetDocumentation(self.UnderlyingSystemType);
            }

            return null;
        }
开发者ID:octavioh,项目名称:ironruby,代码行数:12,代码来源:PythonType.cs


注:本文中的IronPython.Runtime.Types.PythonType.TryLookupSlot方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。