Directories
¶
| Path | Synopsis |
|---|---|
|
Package app provides application primitives.
|
Package app provides application primitives. |
|
appcmd
Package appcmd contains helper functionality for applications using commands.
|
Package appcmd contains helper functionality for applications using commands. |
|
appcmd/appcmdtesting
Package appcmdtesting contains test utilities for appcmd.
|
Package appcmdtesting contains test utilities for appcmd. |
|
appext
Package appext contains extra functionality to work with config files and flags.
|
Package appext contains extra functionality to work with config files and flags. |
|
buf
|
|
|
bufgen
Package bufgen does configuration-based generation.
|
Package bufgen does configuration-based generation. |
|
buflsp
Package buflsp implements a language server for Protobuf.
|
Package buflsp implements a language server for Protobuf. |
|
bufprotoc
Package bufprotoc builds ModuleSets for protoc include paths and file paths.
|
Package bufprotoc builds ModuleSets for protoc include paths and file paths. |
|
bufprotopluginexec
Package bufprotopluginexec provides protoc plugin handling and execution.
|
Package bufprotopluginexec provides protoc plugin handling and execution. |
|
bufpkg
|
|
|
bufconnect
Package bufconnect provides buf-specific Connect functionality.
|
Package bufconnect provides buf-specific Connect functionality. |
|
bufprotoplugin
Package bufprotoplugin contains helper functionality for protoc plugins.
|
Package bufprotoplugin contains helper functionality for protoc plugins. |
|
bufprotoplugin/bufprotopluginos
Package bufprotopluginos does OS-specific generation.
|
Package bufprotopluginos does OS-specific generation. |
|
bufprotosource
Package bufprotosource defines minimal interfaces for Protobuf descriptor types.
|
Package bufprotosource defines minimal interfaces for Protobuf descriptor types. |
|
bufremoteplugin/bufremotepluginconfig
Package bufremotepluginconfig defines the buf.plugin.yaml file.
|
Package bufremotepluginconfig defines the buf.plugin.yaml file. |
|
bufremoteplugin/bufremoteplugindocker
Package bufremoteplugindocker contains utilities for building Buf plugins using the Docker API.
|
Package bufremoteplugindocker contains utilities for building Buf plugins using the Docker API. |
|
gen
|
|
|
data/datawkt
Package datawkt stores the sources of the Well-Known Types, and provides helper functionality around them.
|
Package datawkt stores the sources of the Well-Known Types, and provides helper functionality around them. |
|
Package interrupt implements handling for interrupt signals.
|
Package interrupt implements handling for interrupt signals. |
|
pkg
|
|
|
diff
Package diff implements diffing.
|
Package diff implements diffing. |
|
encoding
Package encoding provides encoding utilities.
|
Package encoding provides encoding utilities. |
|
github/githubtesting
Package githubtesting provides testing functionality for GitHub.
|
Package githubtesting provides testing functionality for GitHub. |
|
indent
Package indent handles printing with indentation, mostly for debug purposes.
|
Package indent handles printing with indentation, mostly for debug purposes. |
|
licenseheader
Package licenseheader handles license headers.
|
Package licenseheader handles license headers. |
|
netrc
Package netrc contains functionality to work with netrc.
|
Package netrc contains functionality to work with netrc. |
|
normalpath
Package normalpath provides functions similar to filepath.
|
Package normalpath provides functions similar to filepath. |
|
oauth2
Package oauth2 contains functionality to work with OAuth2.
|
Package oauth2 contains functionality to work with OAuth2. |
|
osext
Package osext provides os utilities.
|
Package osext provides os utilities. |
|
protogenutil
Package protogenutil provides support for protoc plugin development with the protoplugin and protogen packages.
|
Package protogenutil provides support for protoc plugin development with the protoplugin and protogen packages. |
|
refcount
Package refcount provides utilities for working with reference-counted objects.
|
Package refcount provides utilities for working with reference-counted objects. |
|
shake256
Package shake256 provides simple utilities around shake256 digests.
|
Package shake256 provides simple utilities around shake256 digests. |
|
slogapp
Package slogapp builds slog.Loggers.
|
Package slogapp builds slog.Loggers. |
|
slogtestext
Package slogtestext provides Loggers for testing.
|
Package slogtestext provides Loggers for testing. |
|
storage
Package storage implements a simple storage abstraction.
|
Package storage implements a simple storage abstraction. |
|
storage/storagearchive
Package storagearchive implements archive utilities.
|
Package storagearchive implements archive utilities. |
|
storage/storagemem
Package storagemem implements an in-memory storage Bucket.
|
Package storagemem implements an in-memory storage Bucket. |
|
storage/storagemem/internal
Package internal splits out ImmutableObject into a separate package from storagemem to make it impossible to modify ImmutableObject via direct field access.
|
Package internal splits out ImmutableObject into a separate package from storagemem to make it impossible to modify ImmutableObject via direct field access. |
|
storage/storageos
Package storageos implements an os-backed storage Bucket.
|
Package storageos implements an os-backed storage Bucket. |
|
storage/storagetesting
Package storagetesting implements testing utilities and integration tests for storage.
|
Package storagetesting implements testing utilities and integration tests for storage. |
|
storage/storageutil
Package storageutil provides helpers for storage implementations.
|
Package storageutil provides helpers for storage implementations. |
|
syserror
Package syserror handles "system errors".
|
Package syserror handles "system errors". |
|
tmp
Package tmp provides temporary files and directories.
|
Package tmp provides temporary files and directories. |
|
wasm
Package wasm provides a Wasm runtime for plugins.
|
Package wasm provides a Wasm runtime for plugins. |
|
Package protocompile provides the entry point for a high performance native Go protobuf compiler.
|
Package protocompile provides the entry point for a high performance native Go protobuf compiler. |
|
ast
Package ast defines types for modeling the AST (Abstract Syntax Tree) for the Protocol Buffers interface definition language.
|
Package ast defines types for modeling the AST (Abstract Syntax Tree) for the Protocol Buffers interface definition language. |
|
experimental/ast
Package ast is a high-performance implementation of a Protobuf IDL abstract syntax tree.
|
Package ast is a high-performance implementation of a Protobuf IDL abstract syntax tree. |
|
experimental/ast/predeclared
Package predeclared provides all of the identifiers with a special meaning in Protobuf.
|
Package predeclared provides all of the identifiers with a special meaning in Protobuf. |
|
experimental/ast/syntax
Package syntax specifies all of the syntax pragmas (including editions) that Protocompile understands.
|
Package syntax specifies all of the syntax pragmas (including editions) that Protocompile understands. |
|
experimental/dom
Package dom is a Go port of https://github.com/mcy/strings/tree/main/allman, a high-performance meta-formatting library.
|
Package dom is a Go port of https://github.com/mcy/strings/tree/main/allman, a high-performance meta-formatting library. |
|
experimental/expr
Package expr provides an abstract syntax tree implementation for an expression language shared by various parts of the compiler.
|
Package expr provides an abstract syntax tree implementation for an expression language shared by various parts of the compiler. |
|
experimental/id
Package id provides helpers for working with node-oriented data structures (such as ASTs and graphs) using compressed pointers (IDs).
|
Package id provides helpers for working with node-oriented data structures (such as ASTs and graphs) using compressed pointers (IDs). |
|
experimental/incremental
Package incremental implements a query-oriented incremental compilation framework.
|
Package incremental implements a query-oriented incremental compilation framework. |
|
experimental/incremental/queries
Package queries provides specific incremental.Query types for various parts of Protocompile.
|
Package queries provides specific incremental.Query types for various parts of Protocompile. |
|
experimental/internal/cycle
Package cycle contains internal helpers for dealing with dependency cycles.
|
Package cycle contains internal helpers for dealing with dependency cycles. |
|
experimental/internal/erredition
Package erredition defines common diagnostics for issuing errors about the wrong edition being used.
|
Package erredition defines common diagnostics for issuing errors about the wrong edition being used. |
|
experimental/internal/errtoken
Package errtoken contains standard diagnostics involving tokens, usually emitted by the lexer.
|
Package errtoken contains standard diagnostics involving tokens, usually emitted by the lexer. |
|
experimental/internal/just
package just adds a "justification" helper for diagnostics.
|
package just adds a "justification" helper for diagnostics. |
|
experimental/internal/taxa
Package taxa (plural of taxon, an element of a taxonomy) provides support for classifying Protobuf syntax productions for use in the parser and in diagnostics.
|
Package taxa (plural of taxon, an element of a taxonomy) provides support for classifying Protobuf syntax productions for use in the parser and in diagnostics. |
|
experimental/internal/tokenmeta
Package meta defines internal metadata types shared between the token package and the lexer.
|
Package meta defines internal metadata types shared between the token package and the lexer. |
|
experimental/ir
Package ir defines the intermediate representation used by Protocompile.
|
Package ir defines the intermediate representation used by Protocompile. |
|
experimental/ir/presence
Package presence provides Kind, which denotes the way in which a field can be present in a Protobuf message.
|
Package presence provides Kind, which denotes the way in which a field can be present in a Protobuf message. |
|
experimental/report
Package report provides a robust diagnostics framework.
|
Package report provides a robust diagnostics framework. |
|
experimental/report/tags
Package tags defines publicly-exposed diagnostic tag constants for use with [report.Tag].
|
Package tags defines publicly-exposed diagnostic tag constants for use with [report.Tag]. |
|
experimental/seq
Package seq provides an interface for sequence-like types that can be indexed and inserted into.
|
Package seq provides an interface for sequence-like types that can be indexed and inserted into. |
|
experimental/source
Package source provides a standard interfaces for working with source files and spans within them.
|
Package source provides a standard interfaces for working with source files and spans within them. |
|
experimental/source/length
Package length provides various length that can be used for configuring the behavior of line/column calculations.
|
Package length provides various length that can be used for configuring the behavior of line/column calculations. |
|
experimental/token
Package token provides a memory-efficient representation of a token tree stream for the Protobuf IDL.
|
Package token provides a memory-efficient representation of a token tree stream for the Protobuf IDL. |
|
experimental/token/keyword
Package keyword provides Keyword, an enum of all special "grammar particles" (i.e., literal tokens with special meaning in the grammar such as identifier keywords and punctuation) recognized by Protocompile.
|
Package keyword provides Keyword, an enum of all special "grammar particles" (i.e., literal tokens with special meaning in the grammar such as identifier keywords and punctuation) recognized by Protocompile. |
|
internal/arena
Package arena defines an Arena type with compressed pointers.
|
Package arena defines an Arena type with compressed pointers. |
|
internal/cases
Package cases provides functions for inter-converting between different case styles.
|
Package cases provides functions for inter-converting between different case styles. |
|
internal/editions
Package editions contains helpers related to resolving features for Protobuf editions.
|
Package editions contains helpers related to resolving features for Protobuf editions. |
|
internal/enum
command
enum is a helper for generating boilerplate related to Go enums.
|
enum is a helper for generating boilerplate related to Go enums. |
|
internal/ext/bitsx
Package bitsx contains extensions to Go's package math/bits.
|
Package bitsx contains extensions to Go's package math/bits. |
|
internal/ext/cmpx
package cmpx contains extensions to Go's package cmp.
|
package cmpx contains extensions to Go's package cmp. |
|
internal/ext/iterx
Package iterx contains extensions to Go's package iter.
|
Package iterx contains extensions to Go's package iter. |
|
internal/ext/mapsx
package mapsx contains extensions to Go's package maps.
|
package mapsx contains extensions to Go's package maps. |
|
internal/ext/osx
Package osx contains extensions to the os package.
|
Package osx contains extensions to the os package. |
|
internal/ext/slicesx
Package slicesx contains extensions to Go's package slices.
|
Package slicesx contains extensions to Go's package slices. |
|
internal/ext/stringsx
Package stringsx contains extensions to Go's package strings.
|
Package stringsx contains extensions to Go's package strings. |
|
internal/ext/unsafex
Package unsafex contains extensions to Go's package unsafe.
|
Package unsafex contains extensions to Go's package unsafe. |
|
internal/featuresext
Package featuresext provides file descriptors for the "google/protobuf/cpp_features.proto" and "google/protobuf/java_features.proto" standard import files.
|
Package featuresext provides file descriptors for the "google/protobuf/cpp_features.proto" and "google/protobuf/java_features.proto" standard import files. |
|
internal/golden
Package golden provides a framework for writing file-based golden tests.
|
Package golden provides a framework for writing file-based golden tests. |
|
internal/intern
Package intern provides an interning table abstraction to optimize symbol resolution.
|
Package intern provides an interning table abstraction to optimize symbol resolution. |
|
internal/testing/dualcompiler
Package dualcompiler provides a test abstraction layer for running tests with both the old protocompile.Compiler and the new experimental compiler.
|
Package dualcompiler provides a test abstraction layer for running tests with both the old protocompile.Compiler and the new experimental compiler. |
|
internal/toposort
Package toposort provides a generic topological sort implementation.
|
Package toposort provides a generic topological sort implementation. |
|
linker
Package linker contains logic and APIs related to linking a protobuf file.
|
Package linker contains logic and APIs related to linking a protobuf file. |
|
options
Package options contains the logic for interpreting options.
|
Package options contains the logic for interpreting options. |
|
parser
Package parser contains the logic for parsing protobuf source code into an AST (abstract syntax tree) and also for converting an AST into a descriptor proto.
|
Package parser contains the logic for parsing protobuf source code into an AST (abstract syntax tree) and also for converting an AST into a descriptor proto. |
|
protoutil
Package protoutil contains useful functions for interacting with descriptors.
|
Package protoutil contains useful functions for interacting with descriptors. |
|
reporter
Package reporter contains the types used for reporting errors from protocompile operations.
|
Package reporter contains the types used for reporting errors from protocompile operations. |
|
sourceinfo
Package sourceinfo contains the logic for computing source code info for a file descriptor.
|
Package sourceinfo contains the logic for computing source code info for a file descriptor. |
|
walk
Package walk provides helper functions for traversing all elements in a protobuf file descriptor.
|
Package walk provides helper functions for traversing all elements in a protobuf file descriptor. |
|
wellknownimports
Package wellknownimports provides source code for the well-known import files for use with a protocompile.Compiler.
|
Package wellknownimports provides source code for the well-known import files for use with a protocompile.Compiler. |
|
Package protoplugin is a simple library to assist in writing protoc plugins.
|
Package protoplugin is a simple library to assist in writing protoc plugins. |
|
internal/examples/protoc-gen-protogen-simple
command
Package main implements a very simple plugin that scaffolds using the protogen package with the protoplugin package.
|
Package main implements a very simple plugin that scaffolds using the protogen package with the protoplugin package. |
|
internal/examples/protoc-gen-protoreflect-simple
command
Package main implements a very simple plugin that just outputs text files with the names of the top-level messages in each file, but uses the protoreflect package instead of directly using the FileDescriptorProtos.
|
Package main implements a very simple plugin that just outputs text files with the names of the top-level messages in each file, but uses the protoreflect package instead of directly using the FileDescriptorProtos. |
|
internal/examples/protoc-gen-simple
command
Package main implements a very simple plugin that just outputs text files with the names of the top-level messages in each file.
|
Package main implements a very simple plugin that just outputs text files with the names of the top-level messages in each file. |
|
standard
|
|
|
xio
Package xio provides extended functionality for io.
|
Package xio provides extended functionality for io. |
|
xlog/xslog
Package xslog provides extended functionality for slog.
|
Package xslog provides extended functionality for slog. |
|
xos/xexec
Package xexec provides extended functionality for exec.
|
Package xexec provides extended functionality for exec. |
|
xpath/xfilepath
Package xfilepath provides extended functionality for filepath.
|
Package xfilepath provides extended functionality for filepath. |
|
xslices
Package xslices provides extended functionality for slices.
|
Package xslices provides extended functionality for slices. |
|
xstrings
Package xstrings provides extended functionality for strings.
|
Package xstrings provides extended functionality for strings. |
|
xsync
Package xsync provides extended functionality for sync.
|
Package xsync provides extended functionality for sync. |
|
xtesting
Package xtesting provides extended functionality for testing.
|
Package xtesting provides extended functionality for testing. |
Click to show internal directories.
Click to hide internal directories.