code_moniker_core/lang/
kinds.rs1pub use crate::core::kinds::{
2 VIS_MODULE, VIS_NONE, VIS_PACKAGE, VIS_PRIVATE, VIS_PROTECTED, VIS_PUBLIC,
3};
4
5pub use crate::core::kinds::{
6 KIND_COMMENT as COMMENT, KIND_LOCAL as LOCAL, KIND_MODULE as MODULE, KIND_PARAM as PARAM,
7 REF_ANNOTATES as ANNOTATES, REF_CALLS as CALLS, REF_DI_REGISTER as DI_REGISTER,
8 REF_EXTENDS as EXTENDS, REF_IMPLEMENTS as IMPLEMENTS, REF_IMPORTS_MODULE as IMPORTS_MODULE,
9 REF_IMPORTS_SYMBOL as IMPORTS_SYMBOL, REF_INSTANTIATES as INSTANTIATES,
10 REF_METHOD_CALL as METHOD_CALL, REF_READS as READS, REF_REEXPORTS as REEXPORTS,
11 REF_RETURNS_TYPE as RETURNS_TYPE, REF_TYPED_AS as TYPED_AS, REF_USES_TYPE as USES_TYPE,
12};
13
14pub const LANG: &[u8] = b"lang";
15
16pub const PATH: &[u8] = b"path";
17pub const DIR: &[u8] = b"dir";
18pub const SDK: &[u8] = b"sdk";
19pub const EXTERNAL_PKG: &[u8] = b"external_pkg";
20pub const PACKAGE: &[u8] = b"package";
21
22pub const CLASS: &[u8] = b"class";
23pub const STRUCT: &[u8] = b"struct";
24pub const INTERFACE: &[u8] = b"interface";
25pub const TRAIT: &[u8] = b"trait";
26pub const ENUM: &[u8] = b"enum";
27pub const TYPE: &[u8] = b"type";
28pub const RECORD: &[u8] = b"record";
29pub const ANNOTATION_TYPE: &[u8] = b"annotation_type";
30pub const TABLE: &[u8] = b"table";
31pub const VIEW: &[u8] = b"view";
32
33pub const FUNCTION: &[u8] = b"function";
34pub const ASYNC_FUNCTION: &[u8] = b"async_function";
35pub const FN: &[u8] = b"fn";
36pub const FUNC: &[u8] = b"func";
37pub const METHOD: &[u8] = b"method";
38pub const CONSTRUCTOR: &[u8] = b"constructor";
39
40pub const FIELD: &[u8] = b"field";
41pub const PROPERTY: &[u8] = b"property";
42pub const CONST: &[u8] = b"const";
43pub const STATIC: &[u8] = b"static";
44pub const VAR: &[u8] = b"var";
45pub const ENUM_CONSTANT: &[u8] = b"enum_constant";
46
47pub const HINT_THIS: &[u8] = b"this";
48pub const HINT_SUPER: &[u8] = b"super";
49pub const HINT_SELF: &[u8] = b"self";
50pub const HINT_CLS: &[u8] = b"cls";
51pub const HINT_CALL: &[u8] = b"call";
52pub const HINT_MEMBER: &[u8] = b"member";
53pub const HINT_SUBSCRIPT: &[u8] = b"subscript";
54pub const HINT_PY_CONDITIONAL_IMPORT: &[u8] = b"python_conditional_import";
55pub const HINT_PY_ALL_REPLACE: &[u8] = b"python_all_replace";
56pub const HINT_PY_ALL_EXTEND: &[u8] = b"python_all_extend";
57pub const HINT_PY_ALL_DYNAMIC: &[u8] = b"python_all_dynamic";
58
59pub const INTERNAL_KINDS: &[&str] = &["module", "local", "param", "comment"];
60
61pub const CONF_EXTERNAL: &[u8] = b"external";
62pub const CONF_IMPORTED: &[u8] = b"imported";
63pub const CONF_NAME_MATCH: &[u8] = b"name_match";
64pub const CONF_LOCAL: &[u8] = b"local";
65pub const CONF_RESOLVED: &[u8] = b"resolved";
66pub const CONF_UNRESOLVED: &[u8] = b"unresolved";
67
68pub fn name_confidence_for(is_local: bool, deep: bool) -> Option<&'static [u8]> {
69 if is_local {
70 if deep { Some(CONF_LOCAL) } else { None }
71 } else {
72 Some(CONF_NAME_MATCH)
73 }
74}