summaryrefslogtreecommitdiff
path: root/vendor/golang.org/x/tools/internal/pkgbits/version.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/golang.org/x/tools/internal/pkgbits/version.go')
-rw-r--r--vendor/golang.org/x/tools/internal/pkgbits/version.go85
1 files changed, 0 insertions, 85 deletions
diff --git a/vendor/golang.org/x/tools/internal/pkgbits/version.go b/vendor/golang.org/x/tools/internal/pkgbits/version.go
deleted file mode 100644
index 53af9df22..000000000
--- a/vendor/golang.org/x/tools/internal/pkgbits/version.go
+++ /dev/null
@@ -1,85 +0,0 @@
-// Copyright 2024 The Go Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style
-// license that can be found in the LICENSE file.
-
-package pkgbits
-
-// Version indicates a version of a unified IR bitstream.
-// Each Version indicates the addition, removal, or change of
-// new data in the bitstream.
-//
-// These are serialized to disk and the interpretation remains fixed.
-type Version uint32
-
-const (
- // V0: initial prototype.
- //
- // All data that is not assigned a Field is in version V0
- // and has not been deprecated.
- V0 Version = iota
-
- // V1: adds the Flags uint32 word
- V1
-
- // V2: removes unused legacy fields and supports type parameters for aliases.
- // - remove the legacy "has init" bool from the public root
- // - remove obj's "derived func instance" bool
- // - add a TypeParamNames field to ObjAlias
- // - remove derived info "needed" bool
- V2
-
- numVersions = iota
-)
-
-// Field denotes a unit of data in the serialized unified IR bitstream.
-// It is conceptually a like field in a structure.
-//
-// We only really need Fields when the data may or may not be present
-// in a stream based on the Version of the bitstream.
-//
-// Unlike much of pkgbits, Fields are not serialized and
-// can change values as needed.
-type Field int
-
-const (
- // Flags in a uint32 in the header of a bitstream
- // that is used to indicate whether optional features are enabled.
- Flags Field = iota
-
- // Deprecated: HasInit was a bool indicating whether a package
- // has any init functions.
- HasInit
-
- // Deprecated: DerivedFuncInstance was a bool indicating
- // whether an object was a function instance.
- DerivedFuncInstance
-
- // ObjAlias has a list of TypeParamNames.
- AliasTypeParamNames
-
- // Deprecated: DerivedInfoNeeded was a bool indicating
- // whether a type was a derived type.
- DerivedInfoNeeded
-
- numFields = iota
-)
-
-// introduced is the version a field was added.
-var introduced = [numFields]Version{
- Flags: V1,
- AliasTypeParamNames: V2,
-}
-
-// removed is the version a field was removed in or 0 for fields
-// that have not yet been deprecated.
-// (So removed[f]-1 is the last version it is included in.)
-var removed = [numFields]Version{
- HasInit: V2,
- DerivedFuncInstance: V2,
- DerivedInfoNeeded: V2,
-}
-
-// Has reports whether field f is present in a bitstream at version v.
-func (v Version) Has(f Field) bool {
- return introduced[f] <= v && (v < removed[f] || removed[f] == V0)
-}