You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
134 lines
3.7 KiB
134 lines
3.7 KiB
/**
|
|
* @file log_rules.cpp
|
|
* is an extract from space.cpp
|
|
*
|
|
* @author Guy Maurel
|
|
* @license GPL v2+
|
|
*/
|
|
|
|
#include "log_rules.h"
|
|
|
|
#include "unc_tools.h"
|
|
|
|
|
|
void log_rule2(const char *func, size_t line, const char *rule, Chunk *first, Chunk *second)
|
|
{
|
|
LOG_FUNC_ENTRY();
|
|
|
|
if (second->IsNot(CT_NEWLINE))
|
|
{
|
|
LOG_FMT(LSPACE, "%s(%zu): first orig line is %zu, orig col is %zu, Text() is '%s', [%s/%s] <===>\n",
|
|
func, line, first->GetOrigLine(), first->GetOrigCol(), first->Text(),
|
|
get_token_name(first->GetType()), get_token_name(first->GetParentType()));
|
|
LOG_FMT(LSPACE, " second orig line is %zu, orig col is %zu, Text() is '%s', [%s/%s] :",
|
|
second->GetOrigLine(), second->GetOrigCol(), second->Text(),
|
|
get_token_name(second->GetType()), get_token_name(second->GetParentType()));
|
|
LOG_FMT(LSPACE, " rule %s[line %zu]\n",
|
|
rule, line);
|
|
}
|
|
}
|
|
|
|
|
|
#ifdef SUPER_LOG
|
|
|
|
|
|
void log_rule3(log_sev_t sev, const char *func, size_t line, const char *rule)
|
|
#else
|
|
|
|
|
|
void log_rule3(log_sev_t sev, const char *func, const char *rule)
|
|
#endif
|
|
{
|
|
// some Windows platforms provide a qualified function name ("ABC::XYZ::function_Name")
|
|
// as __func__; call get_unqualified_func_name() to return an unqualified function name
|
|
|
|
func = get_unqualified_func_name(func);
|
|
|
|
#ifdef SUPER_LOG
|
|
LOG_FMT(sev, "log_rule(%s:%zu): rule is '%s'\n", func, line, rule);
|
|
#else
|
|
LOG_FMT(sev, "log_rule(%s): rule is '%s'\n", func, rule);
|
|
#endif
|
|
}
|
|
|
|
|
|
void log_rule4(const char *rule, Chunk *first)
|
|
{
|
|
if (!(cpd.html_type == tracking_type_e::TT_SPACE))
|
|
{
|
|
return;
|
|
}
|
|
|
|
if (first->GetTrackingData() == nullptr)
|
|
{
|
|
first->TrackingData() = new TrackList;
|
|
}
|
|
// copy the rule
|
|
size_t length = strlen(rule) + 1;
|
|
char *r = (char *)malloc(length);
|
|
|
|
strcpy(r, rule);
|
|
size_t a_number = get_A_Number();
|
|
TrackNumber A = make_pair(a_number, r);
|
|
|
|
first->TrackingData()->push_back(A);
|
|
size_t sizeOfTrack = first->GetTrackingData()->size();
|
|
|
|
LOG_FMT(LSPACE, "log_rule4(%d): rule is '%s', after '%s', at line %zu, tracking number is %zu, size is %zu\n",
|
|
__LINE__, rule, first->Text(), first->GetOrigLine(), a_number, sizeOfTrack);
|
|
}
|
|
|
|
|
|
void log_ruleStart(const char *rule, Chunk *first)
|
|
{
|
|
if (!(cpd.html_type == tracking_type_e::TT_START))
|
|
{
|
|
return;
|
|
}
|
|
|
|
if (first->GetTrackingData() == nullptr)
|
|
{
|
|
first->TrackingData() = new TrackList;
|
|
}
|
|
// copy the rule
|
|
size_t length = strlen(rule) + 1;
|
|
char *r = (char *)malloc(length);
|
|
|
|
strcpy(r, rule);
|
|
size_t a_number = get_A_Number();
|
|
TrackNumber A = make_pair(a_number, r);
|
|
|
|
first->TrackingData()->push_back(A);
|
|
size_t sizeOfTrack = first->GetTrackingData()->size();
|
|
|
|
LOG_FMT(LSPACE, "log_ruleStart(%d): rule is '%s', '%s', at line %zu, tracking number is %zu, size is %zu\n",
|
|
__LINE__, rule, first->Text(), first->GetOrigLine(), a_number, sizeOfTrack);
|
|
} // log_ruleStart
|
|
|
|
|
|
void log_ruleNL(const char *rule, Chunk *pc)
|
|
{
|
|
if (!(cpd.html_type == tracking_type_e::TT_NEWLINE))
|
|
{
|
|
return;
|
|
}
|
|
|
|
if (pc->GetTrackingData() == nullptr)
|
|
{
|
|
pc->TrackingData() = new TrackList;
|
|
}
|
|
// copy the rule
|
|
size_t length = strlen(rule) + 1;
|
|
char *r = (char *)malloc(length);
|
|
|
|
strcpy(r, rule);
|
|
size_t a_number = get_A_Number();
|
|
TrackNumber A = make_pair(a_number, r);
|
|
|
|
pc->TrackingData()->push_back(A);
|
|
size_t sizeOfTrack = pc->GetTrackingData()->size();
|
|
|
|
LOG_FMT(LSPACE, "log_rule4(%d): rule is '%s', after '%s', at line %zu, tracking number is %zu, size is %zu\n",
|
|
__LINE__, rule, pc->Text(), pc->GetOrigLine(), a_number, sizeOfTrack);
|
|
}
|