Move Compiler.program to Program.program

This commit is contained in:
Ayke van Laethem
2018-08-19 20:41:05 +02:00
parent e18fd6da16
commit 3146cc86d4
2 changed files with 13 additions and 12 deletions
+6 -1
View File
@@ -12,6 +12,8 @@ import (
// View on all functions, types, and globals in a program, with analysis
// results.
type Program struct {
program *ssa.Program
mainPkg *ssa.Package
Functions []*Function
functionMap map[*ssa.Function]*Function
Globals []*Global
@@ -52,8 +54,11 @@ type InterfaceType struct {
Methods map[string]*types.Selection
}
func NewProgram() *Program {
// Create and intialize a new *Program from a *ssa.Program.
func NewProgram(program *ssa.Program, mainPath string) *Program {
return &Program{
program: program,
mainPkg: program.ImportedPackage(mainPath),
functionMap: make(map[*ssa.Function]*Function),
globalMap: make(map[*ssa.Global]*Global),
methodSignatureNames: make(map[string]int),