1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 19:37:35 +00:00

HackStudio: Add C++ Language Server

The language server keeps track of the content of currently edited
files by receiving updates about edit actions.

Also, C++ autocompletion is no longer tied to HackStudio itself and
moved to be part of the language server.
This commit is contained in:
Itamar 2020-09-28 16:37:37 +03:00 committed by Andreas Kling
parent bf53d7ff64
commit 863f14788f
18 changed files with 451 additions and 21 deletions

View file

@ -103,6 +103,7 @@ public:
void update_views(Badge<TextDocumentLine>);
String text() const;
String text_in_range(const TextRange&) const;
Vector<TextRange> find_all(const StringView& needle) const;
@ -210,6 +211,9 @@ public:
InsertTextCommand(TextDocument&, const String&, const TextPosition&);
virtual void undo() override;
virtual void redo() override;
virtual bool is_insert_text() const override { return true; }
const String& text() const { return m_text; }
const TextRange& range() const { return m_range; }
private:
String m_text;
@ -221,6 +225,8 @@ public:
RemoveTextCommand(TextDocument&, const String&, const TextRange&);
virtual void undo() override;
virtual void redo() override;
virtual bool is_remove_text() const override { return true; }
const TextRange& range() const { return m_range; }
private:
String m_text;