codegraph_parser_api/relationships/
implementations.rs

1use serde::{Deserialize, Serialize};
2
3/// Represents trait/interface implementation
4#[derive(Debug, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
5pub struct ImplementationRelation {
6    /// Implementing class
7    pub implementor: String,
8
9    /// Trait/interface being implemented
10    pub trait_name: String,
11}
12
13impl ImplementationRelation {
14    pub fn new(implementor: impl Into<String>, trait_name: impl Into<String>) -> Self {
15        Self {
16            implementor: implementor.into(),
17            trait_name: trait_name.into(),
18        }
19    }
20}