LanguageServers/Cpp: Add type to Declarations

This commit is contained in:
Itamar 2021-02-27 09:40:34 +02:00 committed by Andreas Kling
parent 4b483071fb
commit 71c7597130
Notes: sideshowbarker 2024-07-18 21:52:57 +09:00
2 changed files with 14 additions and 0 deletions

View file

@ -97,6 +97,7 @@ inline bool encode(Encoder& encoder, const GUI::AutocompleteProvider::Declaratio
encoder << declaration.name;
if (!encode(encoder, declaration.position))
return false;
encoder << (u32)declaration.type;
return true;
}
@ -108,6 +109,11 @@ inline bool decode(Decoder& decoder, GUI::AutocompleteProvider::Declaration& dec
if (!decode(decoder, declaration.position))
return false;
u32 type;
if (!decoder.decode( type))
return false;
declaration.type = static_cast<GUI::AutocompleteProvider::DeclarationType>(type);
return true;
}

View file

@ -62,9 +62,17 @@ public:
size_t column { 0 };
};
enum class DeclarationType {
Function,
Struct,
Class,
Variable
};
struct Declaration {
String name;
ProjectLocation position;
DeclarationType type;
};
virtual void provide_completions(Function<void(Vector<Entry>)>) = 0;