An open API service providing package, version and dependency metadata of many open source software ecosystems and registries.

Top 9.1% on proxy.golang.org
Top 0.3% dependent packages on proxy.golang.org
Top 0.4% dependent repos on proxy.golang.org
Top 0.7% docker downloads on proxy.golang.org

proxy.golang.org : github.com/jhump/protocompile

Package protocompile provides the entry point for a high performance native Go protobuf compiler. "Compile" in this case just means parsing and validating source and generating fully-linked descriptors in the end. Unlike the protoc command-line tool, this package does not try to use the descriptors to perform code. The various sub-packages represent the various compile phases and contain models for the intermediate results. Those phases follow: This package provides an easy-to-use interface that does all of the phases relevant, based on the inputs given. It is also capable of taking advantage of multiple CPU cores, so a compilation involving thousands of files can be done very quickly by compiling things in parallel. A Resolver is how the compiler locates artifacts that are inputs to the compilation. For example, it can load protobuf source code that must be processed. A Resolver could also supply some already-compiled dependencies as fully-linked descriptors, alleviating the need to re-compile them. A Resolver can provide any of the following in response to a query for an input. Compilation will use the Resolver to load the files that are to be compiled and also to load all dependencies (i.e. other files imported by those being compiled). A Compiler accepts a list of file names and produces the list of descriptors. A Compiler has several fields that control how it works but only the Resolver field is required. A minimal Compiler, that resolves files by loading them from the file system based on the current working directory, can be had with the following simple snippet: This minimal Compiler will use default parallelism, equal to the number of CPU cores detected; it will not generate source code info in the resulting descriptors; and it will fail fast at the first sign of any error. All of these aspects can be customized by setting other fields.

Registry - Source - Documentation - JSON
purl: pkg:golang/github.com/jhump/protocompile
License: Apache-2.0
Latest release: over 2 years ago
First release: almost 3 years ago
Namespace: github.com/jhump
Dependent packages: 251
Dependent repositories: 223
Stars: 0 on GitHub
Forks: 0 on GitHub
Docker dependents: 10
Docker downloads: 217,327
See more repository details: repos.ecosyste.ms
Last synced: about 1 month ago

    Loading...
    Readme
    Loading...