Do not pass a window to highlighters factories
This commit is contained in:
parent
a9d832965f
commit
d880465f38
|
@ -267,8 +267,7 @@ void add_highlighter(CommandParameters params, Context& context)
|
||||||
get_group(window.highlighters(), parser.option_value("group"))
|
get_group(window.highlighters(), parser.option_value("group"))
|
||||||
: window.highlighters();
|
: window.highlighters();
|
||||||
|
|
||||||
auto& factory = registry[name];
|
group.append(registry[name](highlighter_params));
|
||||||
group.append(factory(highlighter_params, window));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void rm_highlighter(CommandParameters params, Context& context)
|
void rm_highlighter(CommandParameters params, Context& context)
|
||||||
|
|
|
@ -24,8 +24,7 @@ typedef std::function<void (const Window& window, DisplayBuffer& display_buffer)
|
||||||
typedef std::pair<String, HighlighterFunc> HighlighterAndId;
|
typedef std::pair<String, HighlighterFunc> HighlighterAndId;
|
||||||
typedef memoryview<String> HighlighterParameters;
|
typedef memoryview<String> HighlighterParameters;
|
||||||
|
|
||||||
using HighlighterFactory = std::function<HighlighterAndId (HighlighterParameters params,
|
using HighlighterFactory = std::function<HighlighterAndId (HighlighterParameters params)>;
|
||||||
Window& window)>;
|
|
||||||
|
|
||||||
using HighlighterGroup = FunctionGroup<const Window&, DisplayBuffer&>;
|
using HighlighterGroup = FunctionGroup<const Window&, DisplayBuffer&>;
|
||||||
|
|
||||||
|
|
|
@ -128,7 +128,7 @@ private:
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
HighlighterAndId colorize_regex_factory(HighlighterParameters params, const Window&)
|
HighlighterAndId colorize_regex_factory(HighlighterParameters params)
|
||||||
{
|
{
|
||||||
if (params.size() < 2)
|
if (params.size() < 2)
|
||||||
throw runtime_error("wrong parameter count");
|
throw runtime_error("wrong parameter count");
|
||||||
|
@ -190,7 +190,7 @@ private:
|
||||||
RegexGetter m_regex_getter;
|
RegexGetter m_regex_getter;
|
||||||
};
|
};
|
||||||
|
|
||||||
HighlighterAndId highlight_search_factory(HighlighterParameters params, const Window&)
|
HighlighterAndId highlight_search_factory(HighlighterParameters params)
|
||||||
{
|
{
|
||||||
if (params.size() != 1)
|
if (params.size() != 1)
|
||||||
throw runtime_error("wrong parameter count");
|
throw runtime_error("wrong parameter count");
|
||||||
|
@ -209,7 +209,7 @@ HighlighterAndId highlight_search_factory(HighlighterParameters params, const Wi
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
HighlighterAndId highlight_regex_option_factory(HighlighterParameters params, const Window&)
|
HighlighterAndId highlight_regex_option_factory(HighlighterParameters params)
|
||||||
{
|
{
|
||||||
if (params.size() != 2)
|
if (params.size() != 2)
|
||||||
throw runtime_error("wrong parameter count");
|
throw runtime_error("wrong parameter count");
|
||||||
|
@ -345,7 +345,7 @@ void expand_unprintable(const Window& window, DisplayBuffer& display_buffer)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
HighlighterAndId flag_lines_factory(HighlighterParameters params, Window& window)
|
HighlighterAndId flag_lines_factory(HighlighterParameters params)
|
||||||
{
|
{
|
||||||
if (params.size() != 2)
|
if (params.size() != 2)
|
||||||
throw runtime_error("wrong parameter count");
|
throw runtime_error("wrong parameter count");
|
||||||
|
@ -387,7 +387,7 @@ class SimpleHighlighterFactory
|
||||||
public:
|
public:
|
||||||
SimpleHighlighterFactory(const String& id) : m_id(id) {}
|
SimpleHighlighterFactory(const String& id) : m_id(id) {}
|
||||||
|
|
||||||
HighlighterAndId operator()(HighlighterParameters params, const Window&) const
|
HighlighterAndId operator()(HighlighterParameters params) const
|
||||||
{
|
{
|
||||||
return HighlighterAndId(m_id, HighlighterFunc(highlighter_func));
|
return HighlighterAndId(m_id, HighlighterFunc(highlighter_func));
|
||||||
}
|
}
|
||||||
|
@ -395,7 +395,7 @@ private:
|
||||||
String m_id;
|
String m_id;
|
||||||
};
|
};
|
||||||
|
|
||||||
HighlighterAndId highlighter_group_factory(HighlighterParameters params, const Window&)
|
HighlighterAndId highlighter_group_factory(HighlighterParameters params)
|
||||||
{
|
{
|
||||||
if (params.size() != 1)
|
if (params.size() != 1)
|
||||||
throw runtime_error("wrong parameter count");
|
throw runtime_error("wrong parameter count");
|
||||||
|
|
Loading…
Reference in New Issue
Block a user