| 848 | } |
| 849 | |
| 850 | func (d *decoder) map_(mapID uint64) (out *semantic.Map) { |
| 851 | d.build(d.content.Instances.Map, &d.inst.Map, mapID, &out, |
| 852 | func(p *Map, s *semantic.Map) { |
| 853 | s.Named = semantic.Named(d.str(p.Name)) |
| 854 | s.KeyType = d.ty(p.KeyType) |
| 855 | s.ValueType = d.ty(p.ValueType) |
| 856 | s.Dense = p.Dense |
| 857 | if owner := d.node(p.Owner); owner != nil { |
| 858 | semantic.Add(owner.(semantic.Owner), s) |
| 859 | } |
| 860 | d.toSort = append(d.toSort, s) |
| 861 | }) |
| 862 | return |
| 863 | } |
| 864 | |
| 865 | func (d *decoder) mapAssign(mapAssignID uint64) (out *semantic.MapAssign) { |
| 866 | d.build(d.content.Instances.MapAssign, &d.inst.MapAssign, mapAssignID, &out, |