Documentation
¶
Overview ¶
Package protobufbinding projects supported generated-language APIs onto canonical Protobuf declarations. It reads only repository-owned schema and generator configuration; it never executes a generator or reads ignored output as an authority.
Index ¶
- func IsSemanticInput(path string) bool
- type Config
- type GeneratedFile
- type Loader
- type Parser
- func (*Parser) Language() string
- func (p *Parser) Parse(ctx context.Context, input parserapi.Input) (graph.ParseResult, error)
- func (*Parser) SemanticAffectedPaths(_ string, allPaths, changedPaths []string) []string
- func (p *Parser) SemanticKey(ctx context.Context, input parserapi.Input) (string, error)
- func (*Parser) Supports(path string) bool
- type Projection
- type Registry
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func IsSemanticInput ¶
Types ¶
type Config ¶
type Config struct {
Path string
Line int
Projections []Projection
Diagnostics []graph.Diagnostic
}
type GeneratedFile ¶
type Loader ¶
type Loader struct {
// contains filtered or unexported fields
}
type Parser ¶
type Parser struct {
// contains filtered or unexported fields
}
func (*Parser) SemanticAffectedPaths ¶
func (*Parser) SemanticKey ¶
type Projection ¶
type Registry ¶
type Registry struct {
Digest string
Configs map[string]Config
Outputs map[string]GeneratedFile
// contains filtered or unexported fields
}
func (Registry) ConfiguredOutput ¶
ConfiguredOutput reports whether configuration claims path for language, including a path rejected from Outputs because conflicting configurations claimed it differently. Consumers use this broader provenance only to avoid treating generated implementations as application behavior; GeneratedFile remains the stricter corroboration contract for suppressing all declarations.
func (Registry) GeneratedFile ¶
func (r Registry) GeneratedFile(path, language string, content []byte) (GeneratedFile, bool, string)
GeneratedFile returns corroborated output provenance for path. Content is deliberately checked here so a path configured as output is not enough to suppress an ordinary handwritten file.