Skip to content

Commit df8064f

Browse files
Connecting up the augmentor
1 parent 13c626e commit df8064f

File tree

2 files changed

+17
-4
lines changed

2 files changed

+17
-4
lines changed

build/augmentor.go

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ type Augmentor struct {
6565
packages map[string]*pkgOverrideInfo
6666
}
6767

68-
func (aug *Augmentor) Augment(xctx XContext, pkg *PackageData, fileSet *token.FileSet, file *ast.File) {
68+
func (aug *Augmentor) Augment(xctx XContext, pkg *PackageData, fileSet *token.FileSet, file *ast.File) error {
6969
pkgAug := aug.getPackageOverrides(xctx, pkg, fileSet)
7070

7171
augmentOriginalImports(pkg.ImportPath, file)
@@ -80,10 +80,20 @@ func (aug *Augmentor) Augment(xctx XContext, pkg *PackageData, fileSet *token.Fi
8080
// additional methods and information from the natives.
8181
err := astutil.ConcatenateFiles(file, pkgAug.overlayFiles...)
8282
if err != nil {
83-
panic(fmt.Errorf("failed to concatenate overlay files onto %q: %w", fileSet.Position(file.Package).Filename, err))
83+
return fmt.Errorf("failed to concatenate overlay files onto %q: %w", fileSet.Position(file.Package).Filename, err)
8484
}
8585
pkgAug.overlayFiles = nil
8686
}
87+
88+
return nil
89+
}
90+
91+
func (aug *Augmentor) GetJSFiles(pkg *PackageData) []JSFile {
92+
pkgAug, ok := aug.packages[pkg.ImportPath]
93+
if !ok {
94+
return nil
95+
}
96+
return pkgAug.jsFiles
8797
}
8898

8999
// getPackageOverrides looks up an already loaded package override

build/build.go

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -151,10 +151,13 @@ func parseAndAugment(xctx XContext, pkg *PackageData, fileSet *token.FileSet) ([
151151

152152
aug := &Augmentor{}
153153
for _, file := range originalFiles {
154-
aug.Augment(xctx, pkg, fileSet, file)
154+
err := aug.Augment(xctx, pkg, fileSet, file)
155+
if err != nil {
156+
return nil, nil, err
157+
}
155158
}
156159

157-
jsFiles := aug.packages[pkg.ImportPath].jsFiles
160+
jsFiles := aug.GetJSFiles(pkg)
158161
return originalFiles, jsFiles, nil
159162
}
160163

0 commit comments

Comments
 (0)