(funcID uint64)
| 733 | } |
| 734 | |
| 735 | func (d *decoder) function(funcID uint64) (out *semantic.Function) { |
| 736 | d.build(d.content.Instances.Function, &d.inst.Function, funcID, &out, |
| 737 | func(p *Function, s *semantic.Function) { |
| 738 | s.AST = d.astFunction(p.Ast) |
| 739 | s.Annotations = d.annotations(p.Annotations) |
| 740 | s.Named = semantic.Named(d.str(p.Name)) |
| 741 | s.Docs = d.docs(p.Docs) |
| 742 | s.Return = d.param(p.Return) |
| 743 | s.This = d.param(p.This) |
| 744 | foreach(p.FullParameters, d.param, &s.FullParameters) |
| 745 | s.Block = d.block(p.Block) |
| 746 | s.Signature = d.signature(p.Signature) |
| 747 | s.Extern = p.Extern |
| 748 | s.Subroutine = p.Subroutine |
| 749 | s.Recursive = p.Recursive |
| 750 | if p.Order.Resolved { |
| 751 | s.Order |= semantic.Resolved |
| 752 | } |
| 753 | if p.Order.Pre { |
| 754 | s.Order |= semantic.Pre |
| 755 | } |
| 756 | if p.Order.Post { |
| 757 | s.Order |= semantic.Post |
| 758 | } |
| 759 | if owner := d.node(p.Owner); owner != nil { |
| 760 | semantic.Add(owner.(semantic.Owner), s) |
| 761 | } |
| 762 | }) |
| 763 | return |
| 764 | } |
| 765 | |
| 766 | func (d *decoder) global(globalID uint64) (out *semantic.Global) { |
| 767 | d.build(d.content.Instances.Global, &d.inst.Global, globalID, &out, |
no test coverage detected