// NewLocks constructs and returns a new Locks object that initially contains
// no locks at all.
NewLocks constructs and returns a new Locks object that initially contains
no locks at all.
// NewLocks constructs and returns a new Locks object that initially contains // no locks at all .
func NewLocks() *Locks {
	return &Locks{
		providers: make(map[addrs.Provider]*ProviderLock),
	}
}
func NewLocks ( ) * Locks { return & Locks { providers : make ( map [ addrs . Provider ] * ProviderLock ) , } }
NewLocks constructs and returns a new Locks object that initially contains
no locks at all.
NewLocks constructs and returns a new Locks object that initially contains no locks at all .
// no "sources" here, because that's only for locks objects loaded // from files.