ligen_ir/function/
method.rs1use crate::prelude::*;
2use crate::{Synchrony, Attributes, Mutability, Parameter, Type, Visibility, Identifier};
3
4#[derive(Debug, Default, PartialEq, Clone, Serialize, Deserialize)]
6pub struct Method {
7 pub attributes: Attributes,
9 pub mutability: Mutability,
11 pub visibility: Visibility,
13 pub synchrony: Synchrony,
15 pub identifier: Identifier,
17 pub inputs: Vec<Parameter>,
19 pub output: Option<Type>,
21}
22
23impl CountSymbols for &Vec<Method> {
24 fn count_symbols(&self) -> usize {
25 self.len()
26 }
27}
28
29impl CountSymbols for Vec<Method> {
30 fn count_symbols(&self) -> usize {
31 self.len()
32 }
33}