Skip to content

Commit df5ac21

Browse files
committed
fix hover alias field
1 parent 6e3cbec commit df5ac21

File tree

4 files changed

+28
-14
lines changed

4 files changed

+28
-14
lines changed

crates/emmylua_code_analysis/src/compilation/analyzer/doc/infer_type.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
use std::sync::Arc;
22

33
use emmylua_parser::{
4-
LuaAst, LuaAstNode, LuaDocBinaryType, LuaDocFuncType, LuaDocGenericType,
5-
LuaDocMultiLineUnionType, LuaDocObjectFieldKey, LuaDocObjectType, LuaDocStrTplType, LuaDocType,
6-
LuaDocUnaryType, LuaDocVariadicType, LuaLiteralToken, LuaSyntaxKind, LuaTypeBinaryOperator,
7-
LuaTypeUnaryOperator, LuaVarExpr,
4+
LuaAst, LuaAstNode, LuaDocBinaryType, LuaDocDescriptionOwner, LuaDocFuncType,
5+
LuaDocGenericType, LuaDocMultiLineUnionType, LuaDocObjectFieldKey, LuaDocObjectType,
6+
LuaDocStrTplType, LuaDocType, LuaDocUnaryType, LuaDocVariadicType, LuaLiteralToken,
7+
LuaSyntaxKind, LuaTypeBinaryOperator, LuaTypeUnaryOperator, LuaVarExpr,
88
};
99
use rowan::TextRange;
1010
use smol_str::SmolStr;

crates/emmylua_code_analysis/src/diagnostic/checker/generic/infer_type.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
use emmylua_parser::{
2-
LuaAstNode, LuaDocBinaryType, LuaDocFuncType, LuaDocGenericType, LuaDocMultiLineUnionType,
3-
LuaDocObjectFieldKey, LuaDocObjectType, LuaDocStrTplType, LuaDocType, LuaDocUnaryType,
4-
LuaDocVariadicType, LuaLiteralToken, LuaSyntaxKind, LuaTypeBinaryOperator,
2+
LuaAstNode, LuaDocBinaryType, LuaDocDescriptionOwner, LuaDocFuncType, LuaDocGenericType,
3+
LuaDocMultiLineUnionType, LuaDocObjectFieldKey, LuaDocObjectType, LuaDocStrTplType, LuaDocType,
4+
LuaDocUnaryType, LuaDocVariadicType, LuaLiteralToken, LuaSyntaxKind, LuaTypeBinaryOperator,
55
LuaTypeUnaryOperator,
66
};
77
use rowan::TextRange;

crates/emmylua_ls/src/handlers/test/hover_test.rs

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -212,4 +212,19 @@ mod tests {
212212
},
213213
));
214214
}
215+
216+
#[test]
217+
fn test_alias_desc() {
218+
let mut ws = ProviderVirtualWorkspace::new();
219+
assert!(ws.check_hover(
220+
r#"
221+
---@alias Tes<??>Alias
222+
---| 'A' # A1
223+
---| 'B' # A2
224+
"#,
225+
VirtualHoverResult {
226+
value: "```lua\n(alias) TesAlias = (\"A\"|\"B\")\n | \"A\" -- A1\n | \"B\" -- A2\n\n```".to_string(),
227+
},
228+
));
229+
}
215230
}

crates/emmylua_parser/src/syntax/node/doc/types.rs

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
use crate::{
2-
LuaAstChildren, LuaAstNode, LuaAstToken, LuaDocTypeBinaryToken, LuaDocTypeUnaryToken,
3-
LuaLiteralToken, LuaNameToken, LuaSyntaxKind, LuaSyntaxNode, LuaTokenKind,
2+
LuaAstChildren, LuaAstNode, LuaAstToken, LuaDocDescriptionOwner, LuaDocTypeBinaryToken,
3+
LuaDocTypeUnaryToken, LuaLiteralToken, LuaNameToken, LuaSyntaxKind, LuaSyntaxNode,
4+
LuaTokenKind,
45
};
56

6-
use super::{LuaDocDescription, LuaDocObjectField, LuaDocTypeList};
7+
use super::{LuaDocObjectField, LuaDocTypeList};
78

89
#[derive(Debug, Clone, PartialEq, Eq, Hash)]
910
pub enum LuaDocType {
@@ -717,12 +718,10 @@ impl LuaAstNode for LuaDocOneLineField {
717718
}
718719
}
719720

721+
impl LuaDocDescriptionOwner for LuaDocOneLineField {}
722+
720723
impl LuaDocOneLineField {
721724
pub fn get_type(&self) -> Option<LuaDocType> {
722725
self.child()
723726
}
724-
725-
pub fn get_description(&self) -> Option<LuaDocDescription> {
726-
self.child()
727-
}
728727
}

0 commit comments

Comments
 (0)