github.com/opentofu/opentofu@v1.7.1/internal/configs/container.go (about)

     1  // Copyright (c) The OpenTofu Authors
     2  // SPDX-License-Identifier: MPL-2.0
     3  // Copyright (c) 2023 HashiCorp, Inc.
     4  // SPDX-License-Identifier: MPL-2.0
     5  
     6  package configs
     7  
     8  import "github.com/opentofu/opentofu/internal/addrs"
     9  
    10  // Container provides an interface for scoped resources.
    11  //
    12  // Any resources contained within a Container should not be accessible from
    13  // outside the container.
    14  type Container interface {
    15  	// Accessible should return true if the resource specified by addr can
    16  	// reference other items within this Container.
    17  	//
    18  	// Typically, that means that addr will either be the container itself or
    19  	// something within the container.
    20  	Accessible(addr addrs.Referenceable) bool
    21  }