• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

mlange-42 / modo / 12816549311

16 Jan 2025 07:54PM CUT coverage: 34.117% (-3.0%) from 37.068%
12816549311

Pull #46

github

web-flow
Merge bad20b0e7 into cd52159d3
Pull Request #46: Fix overwritten cross-refs for multi re-export

0 of 105 new or added lines in 3 files covered. (0.0%)

450 of 1319 relevant lines covered (34.12%)

2.48 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

0.0
/document/unlink.go
1
package document
2

NEW
3
func (proc *Processor) unlinkData() {
×
NEW
4
        proc.ExportDocs.Decl = cp(proc.ExportDocs.Decl)
×
NEW
5
        proc.unlinkDataPackage(proc.ExportDocs.Decl)
×
NEW
6
}
×
7

NEW
8
func (proc *Processor) unlinkDataPackage(p *Package) {
×
NEW
9
        p.MemberSummary = cp(p.MemberSummary)
×
NEW
10
        p.MemberDescription = cp(p.MemberDescription)
×
NEW
11

×
NEW
12
        p.Packages = cpSlice(p.Packages)
×
NEW
13
        for i := range p.Packages {
×
NEW
14
                proc.unlinkDataPackage(p.Packages[i])
×
NEW
15
        }
×
16

NEW
17
        p.Modules = cpSlice(p.Modules)
×
NEW
18
        for i := range p.Modules {
×
NEW
19
                proc.unlinkDataModule(p.Modules[i])
×
NEW
20
        }
×
21

NEW
22
        p.Structs = cpSlice(p.Structs)
×
NEW
23
        for i := range p.Structs {
×
NEW
24
                proc.unlinkDataStruct(p.Structs[i])
×
NEW
25
        }
×
26

NEW
27
        p.Traits = cpSlice(p.Traits)
×
NEW
28
        for i := range p.Traits {
×
NEW
29
                proc.unlinkDataTrait(p.Traits[i])
×
NEW
30
        }
×
31

NEW
32
        p.Functions = cpSlice(p.Functions)
×
NEW
33
        for i := range p.Functions {
×
NEW
34
                proc.unlinkDataFunction(p.Functions[i])
×
NEW
35
        }
×
36
}
37

NEW
38
func (proc *Processor) unlinkDataModule(m *Module) {
×
NEW
39
        m.Aliases = cpSlice(m.Aliases)
×
NEW
40

×
NEW
41
        m.Structs = cpSlice(m.Structs)
×
NEW
42
        for i := range m.Structs {
×
NEW
43
                proc.unlinkDataStruct(m.Structs[i])
×
NEW
44
        }
×
45

NEW
46
        m.Traits = cpSlice(m.Traits)
×
NEW
47
        for i := range m.Traits {
×
NEW
48
                proc.unlinkDataTrait(m.Traits[i])
×
NEW
49
        }
×
50

NEW
51
        m.Functions = cpSlice(m.Functions)
×
NEW
52
        for i := range m.Functions {
×
NEW
53
                proc.unlinkDataFunction(m.Functions[i])
×
NEW
54
        }
×
55
}
56

NEW
57
func (proc *Processor) unlinkDataStruct(s *Struct) {
×
NEW
58
        s.Aliases = cpSlice(s.Aliases)
×
NEW
59
        s.Parameters = cpSlice(s.Parameters)
×
NEW
60
        s.Fields = cpSlice(s.Fields)
×
NEW
61

×
NEW
62
        s.Functions = cpSlice(s.Functions)
×
NEW
63
        for i := range s.Functions {
×
NEW
64
                proc.unlinkDataFunction(s.Functions[i])
×
NEW
65
        }
×
66
}
67

NEW
68
func (proc *Processor) unlinkDataTrait(t *Trait) {
×
NEW
69
        //t.Parameters = cpSlicePtr(t.Parameters)
×
NEW
70
        t.Fields = cpSlice(t.Fields)
×
NEW
71

×
NEW
72
        t.Functions = cpSlice(t.Functions)
×
NEW
73
        for i := range t.Functions {
×
NEW
74
                proc.unlinkDataFunction(t.Functions[i])
×
NEW
75
        }
×
76
}
77

NEW
78
func (proc *Processor) unlinkDataFunction(f *Function) {
×
NEW
79
        for i := range f.Parameters {
×
NEW
80
                f.Parameters[i] = cp(f.Parameters[i])
×
NEW
81
        }
×
NEW
82
        for i := range f.Args {
×
NEW
83
                f.Args[i] = cp(f.Args[i])
×
NEW
84
        }
×
85

NEW
86
        for i := range f.Overloads {
×
NEW
87
                f.Overloads[i] = cp(f.Overloads[i])
×
NEW
88
                proc.unlinkDataFunction(f.Overloads[i])
×
NEW
89
        }
×
90
}
91

NEW
92
func cp[T any](v *T) *T {
×
NEW
93
        cp := *v
×
NEW
94
        return &cp
×
NEW
95
}
×
96

NEW
97
func cpSlice[T any](sl []*T) []*T {
×
NEW
98
        newSl := make([]*T, len(sl))
×
NEW
99
        for i, v := range sl {
×
NEW
100
                newSl[i] = cp(v)
×
NEW
101
        }
×
NEW
102
        return newSl
×
103
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc