Implement Node/.NET-style dependency semantics for component resources. Depending on a component implicitly depends on all of the component's children. The exact set of children depends on exactly when the component resource is observed. Part of #7542.
21 lines
304 B
Go
21 lines
304 B
Go
package pulumi
|
|
|
|
type resourceSet map[Resource]struct{}
|
|
|
|
func (s resourceSet) add(r Resource) {
|
|
s[r] = struct{}{}
|
|
}
|
|
|
|
func (s resourceSet) any() bool {
|
|
return len(s) > 0
|
|
}
|
|
|
|
func (s resourceSet) delete(r Resource) {
|
|
delete(s, r)
|
|
}
|
|
|
|
func (s resourceSet) has(r Resource) bool {
|
|
_, ok := s[r]
|
|
return ok
|
|
}
|