Delete dead code
This commit is contained in:
parent
07edc211eb
commit
8cd4bd545c
|
@ -1,7 +1,6 @@
|
|||
package terraform
|
||||
|
||||
import (
|
||||
"bytes"
|
||||
"fmt"
|
||||
"log"
|
||||
"strings"
|
||||
|
@ -567,49 +566,6 @@ func processIgnoreChangesIndividual(prior, proposed cty.Value, ignoreChanges []h
|
|||
return ret, diags
|
||||
}
|
||||
|
||||
// legacyFlagmapKeyForTraversal constructs a key string compatible with what
|
||||
// the flatmap package would generate for an attribute addressable by the given
|
||||
// traversal.
|
||||
//
|
||||
// This is used only to shim references to attributes within the diff and
|
||||
// state structures, which have not (at the time of writing) yet been updated
|
||||
// to use the newer HCL-based representations.
|
||||
func legacyFlatmapKeyForTraversal(traversal hcl.Traversal) string {
|
||||
var buf bytes.Buffer
|
||||
first := true
|
||||
for _, step := range traversal {
|
||||
if !first {
|
||||
buf.WriteByte('.')
|
||||
}
|
||||
switch ts := step.(type) {
|
||||
case hcl.TraverseRoot:
|
||||
buf.WriteString(ts.Name)
|
||||
case hcl.TraverseAttr:
|
||||
buf.WriteString(ts.Name)
|
||||
case hcl.TraverseIndex:
|
||||
val := ts.Key
|
||||
switch val.Type() {
|
||||
case cty.Number:
|
||||
bf := val.AsBigFloat()
|
||||
buf.WriteString(bf.String())
|
||||
case cty.String:
|
||||
s := val.AsString()
|
||||
buf.WriteString(s)
|
||||
default:
|
||||
// should never happen, since no other types appear in
|
||||
// traversals in practice.
|
||||
buf.WriteByte('?')
|
||||
}
|
||||
default:
|
||||
// should never happen, since we've covered all of the types
|
||||
// that show up in parsed traversals in practice.
|
||||
buf.WriteByte('?')
|
||||
}
|
||||
first = false
|
||||
}
|
||||
return buf.String()
|
||||
}
|
||||
|
||||
// a group of key-*ResourceAttrDiff pairs from the same flatmapped container
|
||||
type flatAttrDiff map[string]*ResourceAttrDiff
|
||||
|
||||
|
@ -630,33 +586,6 @@ func (f flatAttrDiff) keepDiff(ignoreChanges map[string]bool) bool {
|
|||
return false
|
||||
}
|
||||
|
||||
// sets, lists and maps need to be compared for diff inclusion as a whole, so
|
||||
// group the flatmapped keys together for easier comparison.
|
||||
func groupContainers(d *InstanceDiff) map[string]flatAttrDiff {
|
||||
isIndex := multiVal.MatchString
|
||||
containers := map[string]flatAttrDiff{}
|
||||
attrs := d.CopyAttributes()
|
||||
// we need to loop once to find the index key
|
||||
for k := range attrs {
|
||||
if isIndex(k) {
|
||||
// add the key, always including the final dot to fully qualify it
|
||||
containers[k[:len(k)-1]] = flatAttrDiff{}
|
||||
}
|
||||
}
|
||||
|
||||
// loop again to find all the sub keys
|
||||
for prefix, values := range containers {
|
||||
for k, attrDiff := range attrs {
|
||||
// we include the index value as well, since it could be part of the diff
|
||||
if strings.HasPrefix(k, prefix) {
|
||||
values[k] = attrDiff
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return containers
|
||||
}
|
||||
|
||||
// EvalDiffDestroy is an EvalNode implementation that returns a plain
|
||||
// destroy diff.
|
||||
type EvalDiffDestroy struct {
|
||||
|
|
Loading…
Reference in New Issue