コード例 #1
0
 protected virtual void MarkCachedMember(MemberDefinitionBase m)
 {
     if (m.IsStatic || AllowCachedMemberFields)
     {
         _cachedMembers.Add(m);
     }
 }
コード例 #2
0
        protected virtual string NameToPrivate(MemberDefinitionBase m)
        {
            string name = m.NativeName;

            if (m is MemberMethodDefinition &&
                (m as MemberMethodDefinition).IsPropertyGetAccessor &&
                name.StartsWith("get"))
            {
                name = name.Substring(3);
            }

            return(NameToPrivate(name));
        }
コード例 #3
0
ファイル: MetaDefinition.cs プロジェクト: MogreBindings/Mogre
        private void AddAttributesInMember(MemberDefinitionBase member, XmlElement elem, List <KeyValuePair <AttributeSet, AutoWrapAttribute> > unprocessedAttributes)
        {
            foreach (XmlAttribute attr in elem.Attributes)
            {
                if (attr.Name != "name")
                {
                    AddAttributeToSet(member, CreateAttributeFromXmlAttribute(attr), unprocessedAttributes);
                }
            }

            foreach (XmlNode childNode in elem.ChildNodes)
            {
                XmlElement childElement = childNode as XmlElement;

                if (childElement == null)
                {
                    // Not an XML element
                    continue;
                }

                // Attached property
                if (IsAttachedProperty(childElement))
                {
                    AddAttributeToSet(member, CreateAttributeFromAttachedAttribute(childElement), unprocessedAttributes);
                    continue;
                }

                switch (childElement.Name)
                {
                case "param":
                    if (!(member is MemberMethodDefinition))
                    {
                        throw new Exception("Unexpected");
                    }

                    string          name  = childElement.GetAttribute("name");
                    ParamDefinition param = null;
                    foreach (ParamDefinition p in (member as MemberMethodDefinition).Parameters)
                    {
                        if (p.Name == name)
                        {
                            param = p;
                            break;
                        }
                    }

                    if (param == null)
                    {
                        return;
                    }
                    //throw new Exception("Wrong param name");

                    // Add all attributes (except for "name") to the set
                    foreach (XmlAttribute attr in childElement.Attributes)
                    {
                        if (attr.Name != "name")
                        {
                            AddAttributeToSet(param, CreateAttributeFromXmlAttribute(attr), unprocessedAttributes);
                        }
                    }
                    break;

                default:
                    throw new Exception("Unexpected");
                }
            }
        }