def __init__(self, service_name, name, procedures, documentation): super(Class, self).__init__() self.service_name = service_name self.name = name self.fullname = service_name+'.'+name self.documentation = documentation self.cref = 'T:%s.%s' % (service_name, name) self.members = {} for pname,pinfo in procedures.items(): if Attributes.is_a_class_member(pinfo['attributes']) and \ Attributes.get_class_name(pinfo['attributes']) == name: if Attributes.is_a_class_method(pinfo['attributes']): member = ClassMethod(service_name, name, pname, **pinfo) elif Attributes.is_a_class_static_method(pinfo['attributes']): member = ClassStaticMethod(service_name, name, pname, **pinfo) else: continue self.members[member.name] = member properties = {} for pname,pinfo in procedures.items(): if Attributes.is_a_class_property_accessor(pinfo['attributes']): propname = Attributes.get_class_property_name(pinfo['attributes']) if propname not in properties: properties[propname] = {} if Attributes.is_a_class_property_getter(pinfo['attributes']): properties[propname]['getter'] = Procedure(service_name, pname, **pinfo) else: properties[propname]['setter'] = Procedure(service_name, pname, **pinfo) for propname,prop in properties.items(): prop = ClassProperty(service_name, name, propname, **prop) self.members[prop.name] = prop
def __init__(self, name, procedures, classes, enumerations, documentation, sort): super(Service, self).__init__() self.name = name self.fullname = name self.documentation = documentation self.cref = 'T:%s' % name members = [] cprocedures = defaultdict(lambda: dict()) properties = defaultdict(lambda: dict()) for pname,info in procedures.iteritems(): if Attributes.is_a_procedure(info['attributes']): members.append(Procedure(name, pname, **info)) elif Attributes.is_a_property_accessor(info['attributes']): propname = Attributes.get_property_name(info['attributes']) if Attributes.is_a_property_getter(info['attributes']): properties[propname]['getter'] = Procedure(name, pname, **info) else: properties[propname]['setter'] = Procedure(name, pname, **info) elif Attributes.is_a_class_member(info['attributes']): cname = Attributes.get_class_name(info['attributes']) cprocedures[cname][pname] = info for propname,prop in properties.iteritems(): members.append(Property(name, propname, **prop)) self.classes = {cname: Class(name, cname, cprocedures[cname], sort=sort, **cinfo) for (cname,cinfo) in classes.iteritems()} self.enumerations = {ename: Enumeration(name, ename, sort=sort, **einfo) for (ename,einfo) in enumerations.iteritems()} self.members = OrderedDict((member.name, member) for member in sorted(members, key=sort))
def __init__(self, name, procedures, classes, enumerations, documentation): super(Service, self).__init__() self.name = name self.fullname = name self.documentation = documentation self.cref = 'T:%s' % name self.members = {} for pname,info in procedures.items(): if Attributes.is_a_procedure(info['attributes']): proc = Procedure(name, pname, **info) self.members[proc.name] = proc properties = {} for pname,info in procedures.items(): if Attributes.is_a_property_accessor(info['attributes']): propname = Attributes.get_property_name(info['attributes']) if propname not in properties: properties[propname] = {} if Attributes.is_a_property_getter(info['attributes']): properties[propname]['getter'] = Procedure(name, pname, **info) else: properties[propname]['setter'] = Procedure(name, pname, **info) for propname,prop in properties.items(): prop = Property(name, propname, **prop) self.members[prop.name] = prop self.classes = {} for cname,cinfo in classes.items(): cprocedures = dict(filter( lambda (name,info): Attributes.is_a_class_member(info['attributes']) and \ Attributes.get_class_name(info['attributes']) == cname, procedures.items())) self.classes[cname] = Class(name, cname, cprocedures, **cinfo) self.enumerations = dict([(ename,Enumeration(name, ename, **einfo)) for ename,einfo in enumerations.items()])
def __init__(self, name, procedures, classes, enumerations, exceptions, documentation, sort): super(Service, self).__init__() self.name = name self.fullname = name self.documentation = documentation self.cref = 'T:%s' % name members = [] cprocedures = defaultdict(dict) properties = defaultdict(dict) for pname, info in procedures.iteritems(): del info['id'] if 'game_scenes' in info: info['game_scenes'] = ', '.join( x.replace('_', ' ').title() for x in info['game_scenes']) else: info['game_scenes'] = 'All' if Attributes.is_a_procedure(pname): members.append(Procedure(name, pname, **info)) elif Attributes.is_a_property_accessor(pname): propname = Attributes.get_property_name(pname) if Attributes.is_a_property_getter(pname): properties[propname]['getter'] = Procedure( name, pname, **info) else: properties[propname]['setter'] = Procedure( name, pname, **info) elif Attributes.is_a_class_member(pname): cname = Attributes.get_class_name(pname) cprocedures[cname][pname] = info for propname, prop in properties.iteritems(): members.append(Property(name, propname, **prop)) self.classes = { cname: Class(name, cname, cprocedures[cname], sort=sort, **cinfo) for (cname, cinfo) in classes.iteritems() } self.enumerations = { ename: Enumeration(name, ename, sort=sort, **einfo) for (ename, einfo) in enumerations.iteritems() } self.exceptions = { ename: ExceptionNode(name, ename, **einfo) for (ename, einfo) in exceptions.iteritems() } self.members = OrderedDict( (member.name, member) for member in sorted(members, key=sort))
def __init__(self, name, procedures, classes, enumerations, documentation, sort): super(Service, self).__init__() self.name = name self.fullname = name self.documentation = documentation self.cref = 'T:%s' % name members = [] cprocedures = defaultdict(dict) properties = defaultdict(dict) for pname, info in procedures.iteritems(): if Attributes.is_a_procedure(info['attributes']): members.append(Procedure(name, pname, **info)) elif Attributes.is_a_property_accessor(info['attributes']): propname = Attributes.get_property_name(info['attributes']) if Attributes.is_a_property_getter(info['attributes']): properties[propname]['getter'] = Procedure( name, pname, **info) else: properties[propname]['setter'] = Procedure( name, pname, **info) elif Attributes.is_a_class_member(info['attributes']): cname = Attributes.get_class_name(info['attributes']) cprocedures[cname][pname] = info for propname, prop in properties.iteritems(): members.append(Property(name, propname, **prop)) self.classes = { cname: Class(name, cname, cprocedures[cname], sort=sort, **cinfo) for (cname, cinfo) in classes.iteritems() } self.enumerations = { ename: Enumeration(name, ename, sort=sort, **einfo) for (ename, einfo) in enumerations.iteritems() } self.members = OrderedDict( (member.name, member) for member in sorted(members, key=sort))