luaur_analysis/records/
function_definition.rs1use crate::type_aliases::module_name_type::ModuleName;
2use luaur_ast::records::location::Location;
3
4#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5pub struct FunctionDefinition {
6 pub(crate) definition_module_name: Option<ModuleName>,
7 pub(crate) definition_location: Location,
8 pub(crate) vararg_location: Option<Location>,
9 pub(crate) original_name_location: Location,
10}
11
12#[allow(non_snake_case)]
13impl FunctionDefinition {
14 pub fn definitionModuleName(&self) -> Option<&ModuleName> {
15 self.definition_module_name.as_ref()
16 }
17
18 pub fn definitionLocation(&self) -> Location {
19 self.definition_location
20 }
21
22 pub fn varargLocation(&self) -> Option<Location> {
23 self.vararg_location
24 }
25
26 pub fn originalNameLocation(&self) -> Location {
27 self.original_name_location
28 }
29}