Skip to content

Commit f729855

Browse files
alexandre-dauboisdunglas
authored andcommitted
feat(extgen): automatically add "runtime/cgo" to the imports if necessary
1 parent 861b345 commit f729855

1 file changed

Lines changed: 14 additions & 1 deletion

File tree

internal/extgen/gofile.go

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,14 +47,27 @@ func (gg *GoFileGenerator) buildContent() (string, error) {
4747

4848
filteredImports := make([]string, 0, len(imports))
4949
for _, imp := range imports {
50-
if imp != `"C"` && imp != `"unsafe"` && imp != `"github.com/dunglas/frankenphp"` {
50+
if imp != `"C"` && imp != `"unsafe"` && imp != `"github.com/dunglas/frankenphp"` && imp != `"runtime/cgo"` {
5151
filteredImports = append(filteredImports, imp)
5252
}
5353
}
5454

5555
classes := make([]phpClass, len(gg.generator.Classes))
5656
copy(classes, gg.generator.Classes)
5757

58+
if len(classes) > 0 {
59+
hasCgo := false
60+
for _, imp := range imports {
61+
if imp == `"runtime/cgo"` {
62+
hasCgo = true
63+
break
64+
}
65+
}
66+
if !hasCgo {
67+
filteredImports = append(filteredImports, `"runtime/cgo"`)
68+
}
69+
}
70+
5871
templateContent, err := gg.getTemplateContent(goTemplateData{
5972
PackageName: SanitizePackageName(gg.generator.BaseName),
6073
BaseName: gg.generator.BaseName,

0 commit comments

Comments
 (0)