Lines Matching refs:struct
1337 struct = self.pure_nested_structs.pop(name)
1338 self.pure_nested_structs[name] = struct
1446 for attr_set, struct in reversed(self.pure_nested_structs.items()):
1448 if attr_set in struct.child_nests:
1449 struct.recursive = True
1458 struct.child_nests.add(child_name)
1462 struct.child_nests.update(child.child_nests)
1463 child.request |= struct.request
1464 child.reply |= struct.reply
1471 for _, struct in self.pure_nested_structs.items():
1472 if struct.request:
1473 for _, arg in struct.member_list():
1475 if struct.reply:
1476 for _, arg in struct.member_list():
1493 for attr_set, struct in all_structs():
1596 self.struct = dict()
1604 self.struct[op_dir] = Struct(family, self.attr_set,
1608 self.struct['reply'] = Struct(family, self.attr_set,
1613 return len(self.struct[key].attr_list) == 0 and \
1614 self.struct['request'].fixed_header is None
1934 def put_typol_submsg(cw, struct): argument
1938 for name, arg in struct.member_list():
1956 def put_typol_fwd(cw, struct): argument
1960 def put_typol(cw, struct): argument
1961 if struct.submsg:
1962 put_typol_submsg(cw, struct)
1965 type_max = struct.attr_set.max_name
1968 for _, arg in struct.member_list():
2037 def put_req_nested_prototype(ri, struct, suffix=';'): argument
2046 def put_req_nested(ri, struct): argument
2050 if struct.submsg is None:
2053 if struct.fixed_header:
2061 for _, arg in struct.member_list():
2069 put_req_nested_prototype(ri, struct, suffix='')
2076 for _, arg in struct.member_list():
2079 if struct.submsg is None:
2088 def _multi_parse(ri, struct, init_lines, local_vars): argument
2089 if struct.fixed_header:
2091 if struct.nested:
2092 if struct.fixed_header:
2107 for arg, aspec in struct.member_list():
2139 for arg in struct.inherited:
2142 if struct.fixed_header:
2143 if struct.nested:
2151 aspec = struct[anest]
2161 for _, arg in struct.member_list():
2170 aspec = struct[anest]
2196 aspec = struct[anest]
2233 if struct.nested:
2241 def parse_rsp_submsg(ri, struct): argument
2242 parse_rsp_nested_prototype(ri, struct, suffix='')
2249 for _, arg in struct.member_list():
2259 for name, arg in struct.member_list():
2277 def parse_rsp_nested_prototype(ri, struct, suffix=';'): argument
2280 for sel in struct.external_selectors():
2282 if struct.submsg:
2284 for arg in struct.inherited:
2291 def parse_rsp_nested(ri, struct): argument
2292 if struct.submsg:
2293 return parse_rsp_submsg(ri, struct)
2295 parse_rsp_nested_prototype(ri, struct, suffix='')
2301 if struct.member_list():
2302 _multi_parse(ri, struct, init_lines, local_vars)
2324 if ri.struct["reply"].member_list():
2325 _multi_parse(ri, ri.struct["reply"], init_lines, local_vars)
2347 if ri.struct["request"].fixed_header:
2351 for _, attr in ri.struct["request"].member_list():
2371 if ri.struct['request'].fixed_header:
2377 for _, attr in ri.struct["request"].member_list():
2417 if ri.struct['request'].fixed_header:
2438 if ri.struct['request'].fixed_header:
2448 for _, attr in ri.struct["request"].member_list():
2475 def print_alloc_wrapper(ri, direction, struct=None): argument
2483 if struct and struct.in_multi_val:
2513 def _print_type(ri, direction, struct): argument
2526 if struct.fixed_header:
2527 ri.cw.p(struct.fixed_header + ' _hdr;')
2532 for _, attr in struct.member_list():
2543 for arg in struct.inherited:
2546 for _, attr in struct.member_list():
2554 _print_type(ri, direction, ri.struct[direction])
2557 def print_type_full(ri, struct): argument
2558 _print_type(ri, "", struct)
2560 if struct.request and struct.in_multi_val:
2561 print_alloc_wrapper(ri, "", struct)
2569 for _, attr in struct.member_list():
2582 for _, attr in ri.struct[direction].member_list():
2619 _free_type(ri, 'request', ri.struct['request'])
2648 def _free_type_members_iter(ri, struct): argument
2649 if struct.free_needs_iter():
2654 def _free_type_members(ri, var, struct, ref=''): argument
2655 for _, attr in struct.member_list():
2659 def _free_type(ri, direction, struct): argument
2664 _free_type_members_iter(ri, struct)
2665 _free_type_members(ri, var, struct)
2676 def free_rsp_nested(ri, struct): argument
2677 _free_type(ri, "", struct)
2683 _free_type(ri, 'reply', ri.struct['reply'])
2694 _free_type_members_iter(ri, ri.struct['reply'])
2699 _free_type_members(ri, 'rsp', ri.struct['reply'], ref='obj.')
2709 _free_type_members_iter(ri, ri.struct['reply'])
2710 _free_type_members(ri, 'rsp', ri.struct['reply'], ref='obj.')
2716 def print_req_policy_fwd(cw, struct, ri=None, terminate=True): argument
2717 if terminate and ri and policy_should_be_static(struct.family):
2723 if ri and policy_should_be_static(struct.family):
2730 max_attr = struct.attr_max_val
2736 name = struct.render_name
2740 def print_req_policy(cw, struct, ri=None): argument
2743 print_req_policy_fwd(cw, struct, ri=ri, terminate=False)
2744 for _, arg in struct.member_list():
2918 struct = Struct(family, op['attribute-set'],
2923 members.append(('maxattr', struct.attr_max_val.enum_name))
2960 struct = Struct(family, op['attribute-set'],
2968 members.append(('maxattr', struct.attr_max_val.enum_name))
3471 for _, struct in sorted(parsed.pure_nested_structs.items()):
3472 if struct.request:
3475 for attr_set, struct in sorted(parsed.pure_nested_structs.items()):
3476 if struct.request:
3477 print_req_policy_fwd(cw, struct)
3483 struct = Struct(parsed, parsed.global_policy_set, type_list=parsed.global_policy)
3484 print_req_policy_fwd(cw, struct)
3491 print_req_policy_fwd(cw, ri.struct['request'], ri=ri)
3501 for _, struct in sorted(parsed.pure_nested_structs.items()):
3502 if struct.request:
3505 for attr_set, struct in sorted(parsed.pure_nested_structs.items()):
3506 if struct.request:
3507 print_req_policy(cw, struct)
3513 struct = Struct(parsed, parsed.global_policy_set, type_list=parsed.global_policy)
3514 print_req_policy(cw, struct)
3523 print_req_policy(cw, ri.struct['request'], ri=ri)
3541 for attr_set, struct in parsed.pure_nested_structs.items():
3543 print_type_full(ri, struct)
3597 for struct in parsed.pure_nested_structs.values():
3598 if struct.recursive:
3599 put_typol_fwd(cw, struct)
3603 for struct in parsed.pure_nested_structs.values():
3604 put_typol(cw, struct)
3606 struct = Struct(parsed, name)
3607 put_typol(cw, struct)
3611 for attr_set, struct in parsed.pure_nested_structs.items():
3614 if struct.request:
3615 put_req_nested_prototype(ri, struct)
3616 if struct.reply:
3617 parse_rsp_nested_prototype(ri, struct)
3619 for attr_set, struct in parsed.pure_nested_structs.items():
3622 free_rsp_nested(ri, struct)
3623 if struct.request:
3624 put_req_nested(ri, struct)
3625 if struct.reply:
3626 parse_rsp_nested(ri, struct)