mirror of
https://github.com/VectorCamp/vectorscan.git
synced 2025-06-28 16:41:01 +03:00
groupByFragment: make fewer string copies
This commit is contained in:
parent
8eb55d4242
commit
ba1df6412b
@ -2767,17 +2767,13 @@ bool isUsedLiteral(const RoseBuildImpl &build, u32 lit_id) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
static
|
static
|
||||||
rose_literal_id getFragment(const rose_literal_id &lit) {
|
rose_literal_id getFragment(rose_literal_id lit) {
|
||||||
if (lit.s.length() <= ROSE_SHORT_LITERAL_LEN_MAX) {
|
if (lit.s.length() > ROSE_SHORT_LITERAL_LEN_MAX) {
|
||||||
DEBUG_PRINTF("whole lit is frag\n");
|
// Trim to last ROSE_SHORT_LITERAL_LEN_MAX bytes.
|
||||||
return lit;
|
lit.s.erase(0, lit.s.length() - ROSE_SHORT_LITERAL_LEN_MAX);
|
||||||
}
|
}
|
||||||
|
DEBUG_PRINTF("fragment: %s\n", dumpString(lit.s).c_str());
|
||||||
rose_literal_id frag = lit;
|
return lit;
|
||||||
frag.s = frag.s.substr(frag.s.length() - ROSE_SHORT_LITERAL_LEN_MAX);
|
|
||||||
|
|
||||||
DEBUG_PRINTF("fragment: %s\n", dumpString(frag.s).c_str());
|
|
||||||
return frag;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static
|
static
|
||||||
|
Loading…
x
Reference in New Issue
Block a user