Debugger: Add skeleton C/C++ syntax highlighter classes.
This commit is contained in:
@@ -28,6 +28,7 @@ SEARCH_SOURCE += [ FDirName $(SUBDIR) settings ] ;
|
|||||||
SEARCH_SOURCE += [ FDirName $(SUBDIR) settings generic ] ;
|
SEARCH_SOURCE += [ FDirName $(SUBDIR) settings generic ] ;
|
||||||
SEARCH_SOURCE += [ FDirName $(SUBDIR) source_language ] ;
|
SEARCH_SOURCE += [ FDirName $(SUBDIR) source_language ] ;
|
||||||
SEARCH_SOURCE += [ FDirName $(SUBDIR) source_language expression_evaluators ] ;
|
SEARCH_SOURCE += [ FDirName $(SUBDIR) source_language expression_evaluators ] ;
|
||||||
|
SEARCH_SOURCE += [ FDirName $(SUBDIR) source_language syntax_highlighters ] ;
|
||||||
SEARCH_SOURCE += [ FDirName $(SUBDIR) types ] ;
|
SEARCH_SOURCE += [ FDirName $(SUBDIR) types ] ;
|
||||||
SEARCH_SOURCE += [ FDirName $(SUBDIR) user_interface ] ;
|
SEARCH_SOURCE += [ FDirName $(SUBDIR) user_interface ] ;
|
||||||
SEARCH_SOURCE += [ FDirName $(SUBDIR) user_interface cli ] ;
|
SEARCH_SOURCE += [ FDirName $(SUBDIR) user_interface cli ] ;
|
||||||
@@ -221,6 +222,10 @@ Application Debugger :
|
|||||||
# source_language/expression_evaluators
|
# source_language/expression_evaluators
|
||||||
CLanguageExpressionEvaluator.cpp
|
CLanguageExpressionEvaluator.cpp
|
||||||
|
|
||||||
|
# source_language/syntax_highlighters
|
||||||
|
CLanguageFamilySyntaxHighlighter.cpp
|
||||||
|
CLanguageFamilySyntaxHighlightInfo.cpp
|
||||||
|
|
||||||
# types
|
# types
|
||||||
ArrayIndexPath.cpp
|
ArrayIndexPath.cpp
|
||||||
TargetAddressRangeList.cpp
|
TargetAddressRangeList.cpp
|
||||||
|
|||||||
@@ -11,6 +11,7 @@
|
|||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
|
|
||||||
#include "CLanguageExpressionEvaluator.h"
|
#include "CLanguageExpressionEvaluator.h"
|
||||||
|
#include "CLanguageFamilySyntaxHighlighter.h"
|
||||||
#include "ExpressionInfo.h"
|
#include "ExpressionInfo.h"
|
||||||
#include "TeamTypeInformation.h"
|
#include "TeamTypeInformation.h"
|
||||||
#include "StringValue.h"
|
#include "StringValue.h"
|
||||||
@@ -32,8 +33,7 @@ CLanguageFamily::~CLanguageFamily()
|
|||||||
SyntaxHighlighter*
|
SyntaxHighlighter*
|
||||||
CLanguageFamily::GetSyntaxHighlighter() const
|
CLanguageFamily::GetSyntaxHighlighter() const
|
||||||
{
|
{
|
||||||
// TODO:...
|
return new(std::nothrow) CLanguageFamilySyntaxHighlighter();
|
||||||
return NULL;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
+34
@@ -0,0 +1,34 @@
|
|||||||
|
/*
|
||||||
|
* Copyright 2014, Rene Gollent, [email protected].
|
||||||
|
* Distributed under the terms of the MIT License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
#include "CLanguageFamilySyntaxHighlightInfo.h"
|
||||||
|
|
||||||
|
#include "LineDataSource.h"
|
||||||
|
|
||||||
|
|
||||||
|
CLanguageFamilySyntaxHighlightInfo::CLanguageFamilySyntaxHighlightInfo(
|
||||||
|
LineDataSource* source)
|
||||||
|
:
|
||||||
|
SyntaxHighlightInfo(),
|
||||||
|
fHighlightSource(source)
|
||||||
|
{
|
||||||
|
fHighlightSource->AcquireReference();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
CLanguageFamilySyntaxHighlightInfo::~CLanguageFamilySyntaxHighlightInfo()
|
||||||
|
{
|
||||||
|
fHighlightSource->ReleaseReference();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
int32
|
||||||
|
CLanguageFamilySyntaxHighlightInfo::GetLineHighlightRanges(int32 line,
|
||||||
|
int32* _columns, syntax_highlight_type* _types, int32 maxCount)
|
||||||
|
{
|
||||||
|
// TODO: implement
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
+28
@@ -0,0 +1,28 @@
|
|||||||
|
/*
|
||||||
|
* Copyright 2014, Rene Gollent, [email protected].
|
||||||
|
* Distributed under the terms of the MIT License.
|
||||||
|
*/
|
||||||
|
#ifndef C_LANGUAGE_FAMILY_SYNTAX_HIGHLIGHT_INFO_H
|
||||||
|
#define C_LANGUAGE_FAMILY_SYNTAX_HIGHLIGHT_INFO_H
|
||||||
|
|
||||||
|
|
||||||
|
#include "SyntaxHighlighter.h"
|
||||||
|
|
||||||
|
|
||||||
|
class CLanguageFamilySyntaxHighlightInfo : public SyntaxHighlightInfo {
|
||||||
|
public:
|
||||||
|
CLanguageFamilySyntaxHighlightInfo(
|
||||||
|
LineDataSource* source);
|
||||||
|
virtual ~CLanguageFamilySyntaxHighlightInfo();
|
||||||
|
|
||||||
|
virtual int32 GetLineHighlightRanges(int32 line,
|
||||||
|
int32* _columns,
|
||||||
|
syntax_highlight_type* _types,
|
||||||
|
int32 maxCount);
|
||||||
|
|
||||||
|
private:
|
||||||
|
LineDataSource* fHighlightSource;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
#endif // C_LANGUAGE_FAMILY_SYNTAX_HIGHLIGHT_INFO_H
|
||||||
+35
@@ -0,0 +1,35 @@
|
|||||||
|
/*
|
||||||
|
* Copyright 2014, Rene Gollent, [email protected].
|
||||||
|
* Distributed under the terms of the MIT License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
#include "CLanguageFamilySyntaxHighlighter.h"
|
||||||
|
|
||||||
|
#include <new>
|
||||||
|
|
||||||
|
#include "CLanguageFamilySyntaxHighlightInfo.h"
|
||||||
|
|
||||||
|
|
||||||
|
CLanguageFamilySyntaxHighlighter::CLanguageFamilySyntaxHighlighter()
|
||||||
|
:
|
||||||
|
SyntaxHighlighter()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
CLanguageFamilySyntaxHighlighter::~CLanguageFamilySyntaxHighlighter()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
status_t
|
||||||
|
CLanguageFamilySyntaxHighlighter::ParseText(LineDataSource* source,
|
||||||
|
SyntaxHighlightInfo*& _info)
|
||||||
|
{
|
||||||
|
_info = new(std::nothrow) CLanguageFamilySyntaxHighlightInfo(source);
|
||||||
|
if (_info == NULL)
|
||||||
|
return B_NO_MEMORY;
|
||||||
|
|
||||||
|
return B_OK;
|
||||||
|
}
|
||||||
+23
@@ -0,0 +1,23 @@
|
|||||||
|
/*
|
||||||
|
* Copyright 2014, Rene Gollent, [email protected].
|
||||||
|
* Distributed under the terms of the MIT License.
|
||||||
|
*/
|
||||||
|
#ifndef C_LANGUAGE_FAMILY_SYNTAX_HIGHLIGHTER_H
|
||||||
|
#define C_LANGUAGE_FAMILY_SYNTAX_HIGHLIGHTER_H
|
||||||
|
|
||||||
|
|
||||||
|
#include "SyntaxHighlighter.h"
|
||||||
|
|
||||||
|
|
||||||
|
class CLanguageFamilySyntaxHighlighter : public SyntaxHighlighter {
|
||||||
|
public:
|
||||||
|
CLanguageFamilySyntaxHighlighter();
|
||||||
|
virtual ~CLanguageFamilySyntaxHighlighter();
|
||||||
|
|
||||||
|
virtual status_t ParseText(LineDataSource* source,
|
||||||
|
SyntaxHighlightInfo*& _info);
|
||||||
|
// caller owns the returned info
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
#endif // C_LANGUAGE_FAMILY_SYNTAX_HIGHLIGHTER_H
|
||||||
Reference in New Issue
Block a user