code: func (b *fixupBody) effectiveSchema(given *hcl.BodySchema) *hcl.BodySchema {
  	return effectiveSchema(given, b.original, b.names, true)
  }
docs: // effectiveSchema produces a derived *hcl.BodySchema by sniffing the body's
  // content to determine whether the author has used attribute or block syntax
  // for each of the ambigious attributes where both are permitted.
  //
  // The resulting schema will always contain all of the same names that are
  // in the given schema, but some attribute schemas may instead be replaced by
  // block header schemas.