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
|
||||
rose_literal_id getFragment(const rose_literal_id &lit) {
|
||||
if (lit.s.length() <= ROSE_SHORT_LITERAL_LEN_MAX) {
|
||||
DEBUG_PRINTF("whole lit is frag\n");
|
||||
return lit;
|
||||
rose_literal_id getFragment(rose_literal_id lit) {
|
||||
if (lit.s.length() > ROSE_SHORT_LITERAL_LEN_MAX) {
|
||||
// Trim to last ROSE_SHORT_LITERAL_LEN_MAX bytes.
|
||||
lit.s.erase(0, lit.s.length() - ROSE_SHORT_LITERAL_LEN_MAX);
|
||||
}
|
||||
|
||||
rose_literal_id frag = 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;
|
||||
DEBUG_PRINTF("fragment: %s\n", dumpString(lit.s).c_str());
|
||||
return lit;
|
||||
}
|
||||
|
||||
static
|
||||
|
Loading…
x
Reference in New Issue
Block a user