package clang.tidy.nullability

Mouse Melon logoGet desktop application:
View/edit binary Protocol Buffers messages

message AbortIfEqualSummary

inference.proto:308

Used in: NullabilityBehaviorSummary

message AssignmentFromValueSummary

inference.proto:300

Encodes properties of an assignment relevant to collecting evidence for the assignment's LHS; that is, the assignee.

Used in: NullabilityBehaviorSummary

message BindingSummary

inference.proto:316

Covers argument binding and "binding" to the returned value.

Used in: NullabilityBehaviorSummary

message CFGSummary

inference.proto:386

Summarizes Nullability-relevant "behaviors" and relevant context from a CFG.

Used in: TUSummary

message Evidence

inference.proto:45

An observation of nullability based on local analysis (e.g. a function body). Evidence from across different functions/TUs is combined to form conclusions.

Used in: SlotInference, SlotPartial.SampleEvidence

enum Evidence.Kind

inference.proto:56

A pattern in the code that might help us determine nullability.

Used in: AssignmentFromValueSummary, Evidence, RequiresAnnotationSummary

message ExitBlockSummary

inference.proto:340

Covers behaviors learned specifically from particular function exit blocks -- constructors and (late) initializers.

Used in: NullabilityBehaviorSummary

message FormulaProto

inference.proto:236

Encodes type Formula.

Used in: AbortIfEqualSummary, LogicalContext, PointerNullStateProto, RequiresAnnotationSummary

message InferableSlotProto

inference.proto:360

Used in: CFGSummary

message InitOnExitSummary

inference.proto:332

For initialization functions -- constructors and "late" initializers -- we collect the state of fields at function exit. We may judge the nullability of the field based on this exit state rather than strictly on initial state.

Used in: ExitBlockSummary

message LogicalContext

inference.proto:368

The logical context for a function definition.

Used in: CFGSummary

message LogicalContext.AtomSet

inference.proto:376

Used in: LogicalContext

enum Nullability

inference.proto:159

Used in: PointerTypeNullabilityProto, RequiresAnnotationSummary, SlotInference, SlotRange

message NullabilityBehaviorSummary

inference.proto:345

Used in: CFGSummary

message PointerNullStateProto

inference.proto:266

Encodes type PointerNullState.

Used in: AssignmentFromValueSummary, BindingSummary, InitOnExitSummary, ValueAssignedToTypeSummary

message PointerTypeNullabilityProto

inference.proto:254

Encodes type PointerTypeNullability.

Used in: AssignmentFromValueSummary, ValueAssignedToTypeSummary

message PointerTypeNullabilityProto.SymbolicNullability

inference.proto:255

Used in: PointerTypeNullabilityProto

message RelatedSymbols

inference.proto:398

A generic serialization format for a relation between symbols. Currently, used as for the `RelatedVirtualMethodsMap` type. TODO: b/440317964 - design a compact representation. For example, we could represent Symbols by integers, and separately maintain a map from integers to USRs.

Used in: TUSummary

message RelatedSymbols.SymbolSet

inference.proto:399

Used in: RelatedSymbols

message RemovalRange

inference.proto:201

A half-open source range to be removed: [begin, end).

Used in: SlotRange

message RequiresAnnotationSummary

inference.proto:274

Encodes a potential requirement for an annotation, specifically -- when `formula` is true in the surrounding context.

Used in: NullabilityBehaviorSummary

enum Slot

inference.proto:35

A "slot" identifies a position in a symbol's type that may have nullability. We use uint32 rather than the Slot type to represent slot numbers in protos. (A symbol may have any number of slots, and proto2 enums are closed). The Slot enum only defines well-known slot values for functions. Fields and global variables use Slot numbers aligned with the indices of their nullability vectors.

message SlotInference

inference.proto:166

A conclusion about nullability based on global analysis (e.g. all TUs).

message SlotPartial

inference.proto:186

Summary of an incomplete set of Evidence for a slot. Once all evidence has been incorporated, can be finalized into SlotInference. This type should be treated as opaque, and its serialization is not stable.

message SlotPartial.SampleEvidence

inference.proto:189

Used in: SlotPartial

message SlotRange

inference.proto:209

Nullability information for a pointer-type source range. Does not include the full source range for the type, as that isn't needed for adding/removing nullability annotations.

message Symbol

inference.proto:23

A symbol whose nullability should potentially be inferred.

Used in: BindingSummary, Evidence, InferableSlotProto, InitOnExitSummary, RelatedSymbols.SymbolSet

message TUSummary

inference.proto:408

A summary for a whole translation unit.

message ValueAssignedToTypeSummary

inference.proto:284

Encodes properties of an assignment relevant to collecting evidence for the assignment's RHS.

Used in: NullabilityBehaviorSummary