pkg project, const FastScan ScanMode
pkg project, const FullScan ScanMode
pkg project, func ApplyToLocalMaster(*jiri.X, Projects, func() error) error
pkg project, func BuildTools(*jiri.X, Tools, string) error
pkg project, func CleanupProjects(*jiri.X, Projects, bool) error
pkg project, func CreateSnapshot(*jiri.X, string) error
pkg project, func CurrentManifest(*jiri.X) (*Manifest, error)
pkg project, func CurrentProjectKey(*jiri.X) (ProjectKey, error)
pkg project, func DataDirPath(*jiri.X, string) (string, error)
pkg project, func GetProjectStates(*jiri.X, bool) (map[ProjectKey]*ProjectState, error)
pkg project, func InstallTools(*jiri.X, string) error
pkg project, func LoadManifest(*jiri.X) (Projects, Tools, error)
pkg project, func LocalProjects(*jiri.X, ScanMode) (Projects, error)
pkg project, func MakeProjectKey(string, string) ProjectKey
pkg project, func ManifestFromBytes([]byte) (*Manifest, error)
pkg project, func ManifestFromFile(*jiri.X, string) (*Manifest, error)
pkg project, func ParseNames(*jiri.X, []string, map[string]struct{}) (Projects, error)
pkg project, func PollProjects(*jiri.X, map[string]struct{}) (Update, error)
pkg project, func ProjectAtPath(*jiri.X, string) (Project, error)
pkg project, func ProjectFromFile(*jiri.X, string) (*Project, error)
pkg project, func TransitionBinDir(*jiri.X) error
pkg project, func UpdateUniverse(*jiri.X, bool) error
pkg project, method (*Import) ProjectKey() ProjectKey
pkg project, method (*Manifest) ToBytes() ([]byte, error)
pkg project, method (*Manifest) ToFile(*jiri.X, string) error
pkg project, method (Project) Key() ProjectKey
pkg project, method (Project) ToFile(*jiri.X, string) error
pkg project, method (ProjectKeys) Len() int
pkg project, method (ProjectKeys) Less(int, int) bool
pkg project, method (ProjectKeys) Swap(int, int)
pkg project, method (Projects) Find(string) Projects
pkg project, method (Projects) FindUnique(string) (Project, error)
pkg project, method (UnsupportedProtocolErr) Error() string
pkg project, type BranchState struct
pkg project, type BranchState struct, HasGerritMessage bool
pkg project, type BranchState struct, Name string
pkg project, type CL struct
pkg project, type CL struct, Author string
pkg project, type CL struct, Description string
pkg project, type CL struct, Email string
pkg project, type Import struct
pkg project, type Import struct, Manifest string
pkg project, type Import struct, Name string
pkg project, type Import struct, Protocol string
pkg project, type Import struct, Remote string
pkg project, type Import struct, RemoteBranch string
pkg project, type Import struct, Root string
pkg project, type Import struct, XMLName struct{}
pkg project, type LocalImport struct
pkg project, type LocalImport struct, File string
pkg project, type LocalImport struct, XMLName struct{}
pkg project, type Manifest struct
pkg project, type Manifest struct, Imports []Import
pkg project, type Manifest struct, Label string
pkg project, type Manifest struct, LocalImports []LocalImport
pkg project, type Manifest struct, Projects []Project
pkg project, type Manifest struct, Tools []Tool
pkg project, type Manifest struct, XMLName struct{}
pkg project, type Project struct
pkg project, type Project struct, GerritHost string
pkg project, type Project struct, GitHooks string
pkg project, type Project struct, Name string
pkg project, type Project struct, Path string
pkg project, type Project struct, Protocol string
pkg project, type Project struct, Remote string
pkg project, type Project struct, RemoteBranch string
pkg project, type Project struct, Revision string
pkg project, type Project struct, RunHook string
pkg project, type Project struct, XMLName struct{}
pkg project, type ProjectKey string
pkg project, type ProjectKeys []ProjectKey
pkg project, type ProjectState struct
pkg project, type ProjectState struct, Branches []BranchState
pkg project, type ProjectState struct, CurrentBranch string
pkg project, type ProjectState struct, HasUncommitted bool
pkg project, type ProjectState struct, HasUntracked bool
pkg project, type ProjectState struct, Project Project
pkg project, type Projects map[ProjectKey]Project
pkg project, type ScanMode bool
pkg project, type Tool struct
pkg project, type Tool struct, Data string
pkg project, type Tool struct, Name string
pkg project, type Tool struct, Package string
pkg project, type Tool struct, Project string
pkg project, type Tool struct, XMLName struct{}
pkg project, type Tools map[string]Tool
pkg project, type UnsupportedProtocolErr string
pkg project, type Update map[string][]CL
pkg project, var JiriName string
pkg project, var JiriPackage string
pkg project, var JiriProject string
