Struct corpus_database::tables::Relations[][src]

pub struct Relations {
    pub def_path_span: Relation<(DefPath, Span)>,
    pub build_crate_types: Relation<(Build, InternedString)>,
    pub root_modules: Relation<(Build, Module)>,
    pub submodules: Relation<(DefPath, Module, Module, Name, Visibility, Abi)>,
    pub function_definitions: Relation<(Item, DefPath, Module, Visibility, Unsafety, Abi, Type)>,
    pub function_parameter_types: Relation<(Item, FnParamIndex, Type)>,
    pub function_unsafe_use: Relation<(DefPath, bool)>,
    pub function_unsafe_reasons: Relation<(DefPath, u32, InternedString)>,
    pub static_definitions: Relation<(DefPath, Item, Module, Name, Visibility, Mutability)>,
    pub impl_definitions: Relation<(DefPath, Item, Module, Name, Visibility, Unsafety, ImplPolarity, Defaultness, Constness, Type)>,
    pub trait_impls: Relation<(Item, Type, DefPath)>,
    pub global_asm_blocks: Relation<(DefPath, Item, Module, Name, Visibility)>,
    pub items: Relation<(DefPath, Item, Module, Name, Visibility)>,
    pub mir_cfgs: Relation<(Item, DefPath, Scope)>,
    pub subscopes: Relation<(Scope, Scope, ScopeSafety, BlockCheckMode, u32, Span)>,
    pub spans: Relation<(Span, Span, SpanExpansionKind, InternedString, SpanFileName, u16, u16)>,
    pub macro_expansions: Relation<(Span, InternedString, SpanFileName, u16, u16)>,
    pub crate_cfgs: Relation<(Build, CrateCfgKey, CrateCfgValue)>,
    pub crate_authors: Relation<(Build, InternedString)>,
    pub crate_keywords: Relation<(Build, InternedString)>,
    pub crate_categories: Relation<(Build, InternedString)>,
    pub type_defs: Relation<(Item, Type, DefPath, InternedString, Visibility, TyDefKind)>,
    pub types: Relation<(Type, TyKind)>,
    pub types_primitive: Relation<(Type, TyPrimitive)>,
    pub types_adt_def: Relation<(Type, DefPath, AdtKind, bool, bool)>,
    pub types_adt_variant: Relation<(Type, AdtVariantIndex, DefPath, InternedString)>,
    pub types_adt_field: Relation<(Field, Type, AdtVariantIndex, DefPath, InternedString, TyVisibility, Type)>,
    pub types_adt_field_visible_in: Relation<(Field, DefPath)>,
    pub types_foreign: Relation<(Type, DefPath)>,
    pub types_array: Relation<(Type, Type)>,
    pub types_slice: Relation<(Type, Type)>,
    pub types_raw_ptr: Relation<(Type, Type, Mutability)>,
    pub types_ref: Relation<(Type, Type, Mutability)>,
    pub types_fn_def: Relation<(Type, DefPath)>,
    pub types_fn_ptr: Relation<(Type,)>,
    pub types_dynamic: Relation<(Type,)>,
    pub types_dynamic_trait: Relation<(Type, DefPath, bool)>,
    pub types_closure: Relation<(Type, DefPath)>,
    pub types_generator: Relation<(Type, DefPath)>,
    pub types_generator_witness: Relation<(Type,)>,
    pub types_tuple: Relation<(Type,)>,
    pub types_tuple_element: Relation<(Type, TupleFieldIndex, Type)>,
    pub types_projection: Relation<(Type, DefPath, DefPath)>,
    pub types_opaque: Relation<(Type, DefPath)>,
    pub types_param: Relation<(Type, u32, InternedString)>,
    pub traits: Relation<(Item, DefPath, InternedString, Visibility, bool, bool, Unsafety)>,
    pub trait_items: Relation<(Item, DefPath, Defaultness)>,
    pub basic_blocks: Relation<(BasicBlock, DefPath, BasicBlockKind)>,
    pub statements: Relation<(Statement, BasicBlock, StatementIndex, StatementKind, Scope)>,
    pub statements_assign_use: Relation<(Statement, Type, Operand)>,
    pub statements_assign_thead_local_ref: Relation<(Statement, Type, DefPath)>,
    pub statements_assign_repeat: Relation<(Statement, Type, Operand, u64)>,
    pub statements_assign_ref: Relation<(Statement, Type, Type, BorrowKind)>,
    pub statements_assign_address: Relation<(Statement, Type, Type, Mutability)>,
    pub statements_assign_len: Relation<(Statement, Type, Type)>,
    pub statements_assign_cast: Relation<(Statement, Type, CastKind, Operand, Type)>,
    pub statements_assign_binary_op: Relation<(Statement, Type, BinOp, Operand, Operand)>,
    pub statements_assign_checked_binary_op: Relation<(Statement, Type, BinOp, Operand, Operand)>,
    pub statements_assign_nullary_op: Relation<(Statement, Type, NullOp, Type)>,
    pub statements_assign_unary_op: Relation<(Statement, Type, UnOp, Operand)>,
    pub statements_assign_discriminant: Relation<(Statement, Type, Type)>,
    pub statements_assign_aggregate: Relation<(Statement, Type, AggregateKind)>,
    pub statements_assign_aggregate_operands: Relation<(Statement, OperandIndex, Operand)>,
    pub statements_inline_asm_inputs: Relation<(Statement, Operand)>,
    pub statements_inline_asm_outputs: Relation<(Statement, Type)>,
    pub operands: Relation<(Operand, OperandKind, Type)>,
    pub terminators: Relation<(BasicBlock, TerminatorKind, Scope)>,
    pub terminators_goto: Relation<(BasicBlock, BasicBlock)>,
    pub terminators_switch_int: Relation<(BasicBlock, Operand, Type)>,
    pub terminators_switch_int_targets: Relation<(BasicBlock, u128, BasicBlock)>,
    pub terminators_drop: Relation<(BasicBlock, Type, BasicBlock, BasicBlock)>,
    pub terminators_drop_and_replace: Relation<(BasicBlock, Type, Operand, BasicBlock, BasicBlock)>,
    pub terminators_call: Relation<(BasicBlock, FunctionCall, Operand, Unsafety, Abi, Type, BasicBlock, BasicBlock, Span)>,
    pub terminators_call_arg: Relation<(FunctionCall, CallArgIndex, Operand)>,
    pub terminators_call_const_target: Relation<(FunctionCall, DefPath)>,
    pub terminators_call_const_target_self: Relation<(FunctionCall, Type)>,
    pub terminators_assert: Relation<(BasicBlock, Operand, bool, BasicBlock, BasicBlock)>,
    pub terminators_yield: Relation<(BasicBlock, Operand, BasicBlock, BasicBlock)>,
    pub terminators_false_edges: Relation<(BasicBlock, BasicBlock, BasicBlock)>,
    pub terminators_false_unwind: Relation<(BasicBlock, BasicBlock, BasicBlock)>,
    pub terminators_inline_asm: Relation<(BasicBlock,)>,
}

Relations between various entities of the Rust program.

Fields

def_path_span: Relation<(DefPath, Span)>build_crate_types: Relation<(Build, InternedString)>root_modules: Relation<(Build, Module)>submodules: Relation<(DefPath, Module, Module, Name, Visibility, Abi)>function_definitions: Relation<(Item, DefPath, Module, Visibility, Unsafety, Abi, Type)>function_parameter_types: Relation<(Item, FnParamIndex, Type)>function_unsafe_use: Relation<(DefPath, bool)>function_unsafe_reasons: Relation<(DefPath, u32, InternedString)>static_definitions: Relation<(DefPath, Item, Module, Name, Visibility, Mutability)>impl_definitions: Relation<(DefPath, Item, Module, Name, Visibility, Unsafety, ImplPolarity, Defaultness, Constness, Type)>trait_impls: Relation<(Item, Type, DefPath)>global_asm_blocks: Relation<(DefPath, Item, Module, Name, Visibility)>items: Relation<(DefPath, Item, Module, Name, Visibility)>mir_cfgs: Relation<(Item, DefPath, Scope)>subscopes: Relation<(Scope, Scope, ScopeSafety, BlockCheckMode, u32, Span)>spans: Relation<(Span, Span, SpanExpansionKind, InternedString, SpanFileName, u16, u16)>macro_expansions: Relation<(Span, InternedString, SpanFileName, u16, u16)>crate_cfgs: Relation<(Build, CrateCfgKey, CrateCfgValue)>crate_authors: Relation<(Build, InternedString)>crate_keywords: Relation<(Build, InternedString)>crate_categories: Relation<(Build, InternedString)>type_defs: Relation<(Item, Type, DefPath, InternedString, Visibility, TyDefKind)>types: Relation<(Type, TyKind)>types_primitive: Relation<(Type, TyPrimitive)>types_adt_def: Relation<(Type, DefPath, AdtKind, bool, bool)>types_adt_variant: Relation<(Type, AdtVariantIndex, DefPath, InternedString)>types_adt_field: Relation<(Field, Type, AdtVariantIndex, DefPath, InternedString, TyVisibility, Type)>types_adt_field_visible_in: Relation<(Field, DefPath)>types_foreign: Relation<(Type, DefPath)>types_array: Relation<(Type, Type)>types_slice: Relation<(Type, Type)>types_raw_ptr: Relation<(Type, Type, Mutability)>types_ref: Relation<(Type, Type, Mutability)>types_fn_def: Relation<(Type, DefPath)>types_fn_ptr: Relation<(Type,)>types_dynamic: Relation<(Type,)>types_dynamic_trait: Relation<(Type, DefPath, bool)>types_closure: Relation<(Type, DefPath)>types_generator: Relation<(Type, DefPath)>types_generator_witness: Relation<(Type,)>types_tuple: Relation<(Type,)>types_tuple_element: Relation<(Type, TupleFieldIndex, Type)>types_projection: Relation<(Type, DefPath, DefPath)>types_opaque: Relation<(Type, DefPath)>types_param: Relation<(Type, u32, InternedString)>traits: Relation<(Item, DefPath, InternedString, Visibility, bool, bool, Unsafety)>trait_items: Relation<(Item, DefPath, Defaultness)>basic_blocks: Relation<(BasicBlock, DefPath, BasicBlockKind)>statements: Relation<(Statement, BasicBlock, StatementIndex, StatementKind, Scope)>statements_assign_use: Relation<(Statement, Type, Operand)>statements_assign_thead_local_ref: Relation<(Statement, Type, DefPath)>statements_assign_repeat: Relation<(Statement, Type, Operand, u64)>statements_assign_ref: Relation<(Statement, Type, Type, BorrowKind)>statements_assign_address: Relation<(Statement, Type, Type, Mutability)>statements_assign_len: Relation<(Statement, Type, Type)>statements_assign_cast: Relation<(Statement, Type, CastKind, Operand, Type)>statements_assign_binary_op: Relation<(Statement, Type, BinOp, Operand, Operand)>statements_assign_checked_binary_op: Relation<(Statement, Type, BinOp, Operand, Operand)>statements_assign_nullary_op: Relation<(Statement, Type, NullOp, Type)>statements_assign_unary_op: Relation<(Statement, Type, UnOp, Operand)>statements_assign_discriminant: Relation<(Statement, Type, Type)>statements_assign_aggregate: Relation<(Statement, Type, AggregateKind)>statements_assign_aggregate_operands: Relation<(Statement, OperandIndex, Operand)>statements_inline_asm_inputs: Relation<(Statement, Operand)>statements_inline_asm_outputs: Relation<(Statement, Type)>operands: Relation<(Operand, OperandKind, Type)>terminators: Relation<(BasicBlock, TerminatorKind, Scope)>terminators_goto: Relation<(BasicBlock, BasicBlock)>terminators_switch_int: Relation<(BasicBlock, Operand, Type)>terminators_switch_int_targets: Relation<(BasicBlock, u128, BasicBlock)>terminators_drop: Relation<(BasicBlock, Type, BasicBlock, BasicBlock)>terminators_drop_and_replace: Relation<(BasicBlock, Type, Operand, BasicBlock, BasicBlock)>terminators_call: Relation<(BasicBlock, FunctionCall, Operand, Unsafety, Abi, Type, BasicBlock, BasicBlock, Span)>terminators_call_arg: Relation<(FunctionCall, CallArgIndex, Operand)>terminators_call_const_target: Relation<(FunctionCall, DefPath)>terminators_call_const_target_self: Relation<(FunctionCall, Type)>terminators_assert: Relation<(BasicBlock, Operand, bool, BasicBlock, BasicBlock)>terminators_yield: Relation<(BasicBlock, Operand, BasicBlock, BasicBlock)>terminators_false_edges: Relation<(BasicBlock, BasicBlock, BasicBlock)>terminators_false_unwind: Relation<(BasicBlock, BasicBlock, BasicBlock)>terminators_inline_asm: Relation<(BasicBlock,)>

Trait Implementations

impl Default for Relations[src]

impl<'de> Deserialize<'de> for Relations[src]

impl Serialize for Relations[src]

Auto Trait Implementations

impl RefUnwindSafe for Relations

impl Send for Relations

impl Sync for Relations

impl Unpin for Relations

impl UnwindSafe for Relations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> DeserializeOwned for T where
    T: for<'de> Deserialize<'de>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.