|  | package gps | 
|  |  | 
|  | // sourceExistence values represent the extent to which a project "exists." | 
|  | type sourceExistence uint8 | 
|  |  | 
|  | const ( | 
|  | // ExistsInVendorRoot indicates that a project exists in a vendor directory | 
|  | // at the predictable location based on import path. It does NOT imply, much | 
|  | // less guarantee, any of the following: | 
|  | //   - That the code at the expected location under vendor is at the version | 
|  | //   given in a lock file | 
|  | //   - That the code at the expected location under vendor is from the | 
|  | //   expected upstream project at all | 
|  | //   - That, if this flag is not present, the project does not exist at some | 
|  | //   unexpected/nested location under vendor | 
|  | //   - That the full repository history is available. In fact, the | 
|  | //   assumption should be that if only this flag is on, the full repository | 
|  | //   history is likely not available (locally) | 
|  | // | 
|  | // In short, the information encoded in this flag should not be construed as | 
|  | // exhaustive. | 
|  | existsInVendorRoot sourceExistence = 1 << iota | 
|  |  | 
|  | // ExistsInCache indicates that a project exists on-disk in the local cache. | 
|  | // It does not guarantee that an upstream exists, thus it cannot imply | 
|  | // that the cache is at all correct - up-to-date, or even of the expected | 
|  | // upstream project repository. | 
|  | // | 
|  | // Additionally, this refers only to the existence of the local repository | 
|  | // itself; it says nothing about the existence or completeness of the | 
|  | // separate metadata cache. | 
|  | existsInCache | 
|  |  | 
|  | // ExistsUpstream indicates that a project repository was locatable at the | 
|  | // path provided by a project's URI (a base import path). | 
|  | existsUpstream | 
|  | ) |