private static Class ProcessClass(XmlNode node) { string id = Xml.GetId(node); string fullName = Xml.GetCompoundNodeName(node); string namespaceName = GetNamespaceFromFullyQualifiedName(fullName); Class classDefinition = new Class(id, GetNameFromFullyQualifiedName(fullName), namespaceName); ProcessMembers(classDefinition, node, namespaceName); return(classDefinition); }
private static void ProcessFunction(ApiContainer apiContainer, XmlNode memberNode, string namespaceName, bool isClassMember) { List <NamedElement> parameters = new List <NamedElement>(); foreach (XmlNode parameterNode in memberNode.SelectNodes(Xml.Param)) { parameters.Add(GetNamedElement(parameterNode)); } Element returnType = GetElement(memberNode); string name = Xml.GetName(memberNode); bool isConstructor = apiContainer is Class classDefinition && classDefinition.Name == name; apiContainer.Functions.Add(new Function(Xml.GetId(memberNode), namespaceName, name, returnType, Xml.GetIsConstant(memberNode), isConstructor, Xml.GetIsStatic(memberNode), isClassMember, parameters.AsReadOnly())); }