github.com/gotranspile/cxgo@v0.3.7/hooks.go (about) 1 package cxgo 2 3 type ASTHookCFunc func(c Config, fname string, decls []CDecl) error 4 5 var ( 6 astHooksC []ASTHookCFunc 7 finals []func() error 8 ) 9 10 func RegisterASTHookC(fnc ASTHookCFunc) { 11 astHooksC = append(astHooksC, fnc) 12 } 13 14 func RegisterFinal(fnc func() error) { 15 finals = append(finals, fnc) 16 } 17 18 func CallFinals() error { 19 for _, f := range finals { 20 if err := f(); err != nil { 21 return err 22 } 23 } 24 return nil 25 }