Skip to content

Commit ad21ea9

Browse files
committed
Use strings equal functions where possible
1 parent 600144c commit ad21ea9

File tree

7 files changed

+30
-29
lines changed

7 files changed

+30
-29
lines changed

src/blocks/controlblocks.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -225,7 +225,8 @@ extern "C" void control_create_clone_by_index(ExecutionContext *ctx, double inde
225225
extern "C" void control_create_clone(ExecutionContext *ctx, const StringPtr *spriteName)
226226
{
227227
static const StringPtr myself("_myself_");
228-
if (string_compare_case_sensitive(spriteName, &myself) == 0)
228+
229+
if (strings_equal_case_sensitive(spriteName, &myself))
229230
control_create_clone_of_myself(ctx->thread()->target());
230231
else {
231232
IEngine *engine = ctx->engine();

src/blocks/eventblocks.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -180,9 +180,9 @@ extern "C" bool event_whentouchingobject_predicate(Target *target, const StringP
180180

181181
IEngine *engine = target->engine();
182182

183-
if (string_compare_case_sensitive(name, &MOUSE_STR) == 0)
183+
if (strings_equal_case_sensitive(name, &MOUSE_STR))
184184
return target->touchingPoint(engine->mouseX(), engine->mouseY());
185-
else if (string_compare_case_sensitive(name, &EDGE_STR) == 0)
185+
else if (strings_equal_case_sensitive(name, &EDGE_STR))
186186
return target->touchingEdge();
187187
else {
188188
// TODO: Use UTF-16 in engine

src/blocks/motionblocks.cpp

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -417,9 +417,9 @@ extern "C" void motion_pointtowards(ExecutionContext *ctx, const StringPtr *towa
417417

418418
Sprite *sprite = static_cast<Sprite *>(ctx->thread()->target());
419419

420-
if (string_compare_case_sensitive(towards, &MOUSE_STR) == 0)
420+
if (strings_equal_case_sensitive(towards, &MOUSE_STR))
421421
motion_point_towards_mouse(sprite);
422-
else if (string_compare_case_sensitive(towards, &RANDOM_STR) == 0)
422+
else if (strings_equal_case_sensitive(towards, &RANDOM_STR))
423423
motion_point_towards_random_direction(ctx);
424424
else {
425425
// TODO: Use UTF-16 in engine
@@ -467,9 +467,9 @@ extern "C" void motion_goto(ExecutionContext *ctx, const StringPtr *towards)
467467

468468
Sprite *sprite = static_cast<Sprite *>(ctx->thread()->target());
469469

470-
if (string_compare_case_sensitive(towards, &MOUSE_STR) == 0)
470+
if (strings_equal_case_sensitive(towards, &MOUSE_STR))
471471
motion_go_to_mouse(sprite);
472-
else if (string_compare_case_sensitive(towards, &RANDOM_STR) == 0)
472+
else if (strings_equal_case_sensitive(towards, &RANDOM_STR))
473473
motion_go_to_random_pos(ctx);
474474
else {
475475
// TODO: Use UTF-16 in engine
@@ -552,9 +552,9 @@ extern "C" double motion_get_target_x(ExecutionContext *ctx, const StringPtr *na
552552
static const StringPtr MOUSE_STR("_mouse_");
553553
static const StringPtr RANDOM_STR("_random_");
554554

555-
if (string_compare_case_sensitive(name, &MOUSE_STR) == 0)
555+
if (strings_equal_case_sensitive(name, &MOUSE_STR))
556556
return ctx->engine()->mouseX();
557-
else if (string_compare_case_sensitive(name, &RANDOM_STR) == 0)
557+
else if (strings_equal_case_sensitive(name, &RANDOM_STR))
558558
return motion_get_random_x(ctx);
559559
else {
560560
// TODO: Use UTF-16 in engine
@@ -575,9 +575,9 @@ extern "C" double motion_get_target_y(ExecutionContext *ctx, const StringPtr *na
575575
static const StringPtr MOUSE_STR("_mouse_");
576576
static const StringPtr RANDOM_STR("_random_");
577577

578-
if (string_compare_case_sensitive(name, &MOUSE_STR) == 0)
578+
if (strings_equal_case_sensitive(name, &MOUSE_STR))
579579
return ctx->engine()->mouseY();
580-
else if (string_compare_case_sensitive(name, &RANDOM_STR) == 0)
580+
else if (strings_equal_case_sensitive(name, &RANDOM_STR))
581581
return motion_get_random_y(ctx);
582582
else {
583583
// TODO: Use UTF-16 in engine
@@ -598,7 +598,7 @@ extern "C" bool motion_is_target_valid(ExecutionContext *ctx, const StringPtr *n
598598
static const StringPtr MOUSE_STR("_mouse_");
599599
static const StringPtr RANDOM_STR("_random_");
600600

601-
if (string_compare_case_sensitive(name, &MOUSE_STR) == 0 || string_compare_case_sensitive(name, &RANDOM_STR) == 0)
601+
if (strings_equal_case_sensitive(name, &MOUSE_STR) || strings_equal_case_sensitive(name, &RANDOM_STR))
602602
return true;
603603
else {
604604
// TODO: Use UTF-16 in engine

src/blocks/sensingblocks.cpp

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -453,11 +453,11 @@ extern "C" bool sensing_touchingobject(Target *target, const StringPtr *object)
453453
static const StringPtr EDGE_STR("_edge_");
454454
static const StringPtr STAGE_STR("_stage_");
455455

456-
if (string_compare_case_sensitive(object, &MOUSE_STR) == 0)
456+
if (strings_equal_case_sensitive(object, &MOUSE_STR))
457457
return sensing_touching_mouse(target);
458-
else if (string_compare_case_sensitive(object, &EDGE_STR) == 0)
458+
else if (strings_equal_case_sensitive(object, &EDGE_STR))
459459
return sensing_touching_edge(target);
460-
else if (string_compare_case_sensitive(object, &STAGE_STR) != 0) {
460+
else if (!strings_equal_case_sensitive(object, &STAGE_STR)) {
461461
IEngine *engine = target->engine();
462462
// TODO: Use UTF-16 in engine
463463
std::string u8name = utf8::utf16to8(std::u16string(object->data));
@@ -501,9 +501,9 @@ extern "C" double sensing_distanceto(Sprite *sprite, const StringPtr *object)
501501
static const StringPtr MOUSE_STR("_mouse_");
502502
static const StringPtr STAGE_STR("_stage_");
503503

504-
if (string_compare_case_sensitive(object, &MOUSE_STR) == 0)
504+
if (strings_equal_case_sensitive(object, &MOUSE_STR))
505505
return sensing_distance_to_mouse(sprite);
506-
else if (string_compare_case_sensitive(object, &STAGE_STR) != 0) {
506+
else if (!strings_equal_case_sensitive(object, &STAGE_STR)) {
507507
IEngine *engine = sprite->engine();
508508
// TODO: Use UTF-16 in engine
509509
std::string u8name = utf8::utf16to8(std::u16string(object->data));

src/engine/internal/llvm/llvmbuildutils.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1323,9 +1323,9 @@ llvm::Value *LLVMBuildUtils::createStringComparison(LLVMRegister *arg1, LLVMRegi
13231323
bool result;
13241324

13251325
if (caseSensitive)
1326-
result = string_compare_case_sensitive(str1, str2) == 0;
1326+
result = strings_equal_case_sensitive(str1, str2);
13271327
else {
1328-
result = string_compare_case_insensitive(str1, str2) == 0;
1328+
result = strings_equal_case_insensitive(str1, str2);
13291329
}
13301330

13311331
string_pool_free(str1);

src/scratch/value_functions.cpp

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,7 @@ extern "C"
124124
case ValueType::Number:
125125
return value_isInf(v->numberValue);
126126
case ValueType::String:
127-
return string_compare_case_sensitive(v->stringValue, &INFINITY_STR) == 0;
127+
return strings_equal_case_sensitive(v->stringValue, &INFINITY_STR);
128128
default:
129129
return false;
130130
}
@@ -137,7 +137,7 @@ extern "C"
137137
case ValueType::Number:
138138
return value_isNegativeInf(v->numberValue);
139139
case ValueType::String:
140-
return string_compare_case_sensitive(v->stringValue, &NEGATIVE_INFINITY_STR) == 0;
140+
return strings_equal_case_sensitive(v->stringValue, &NEGATIVE_INFINITY_STR);
141141
default:
142142
return false;
143143
}
@@ -150,7 +150,7 @@ extern "C"
150150
case ValueType::Number:
151151
return std::isnan(v->numberValue);
152152
case ValueType::String:
153-
return string_compare_case_sensitive(v->stringValue, &NAN_STR) == 0;
153+
return strings_equal_case_sensitive(v->stringValue, &NAN_STR);
154154
default:
155155
return false;
156156
}
@@ -466,9 +466,9 @@ extern "C"
466466
/*! Converts the given string to double. */
467467
double value_stringToDouble(const StringPtr *s)
468468
{
469-
if (string_compare_case_sensitive(s, &INFINITY_STR) == 0)
469+
if (strings_equal_case_sensitive(s, &INFINITY_STR))
470470
return std::numeric_limits<double>::infinity();
471-
else if (string_compare_case_sensitive(s, &NEGATIVE_INFINITY_STR) == 0)
471+
else if (strings_equal_case_sensitive(s, &NEGATIVE_INFINITY_STR))
472472
return -std::numeric_limits<double>::infinity();
473473

474474
return value_stringToDoubleImpl(s->data, s->size);
@@ -482,9 +482,9 @@ extern "C"
482482
{
483483
*ok = true;
484484

485-
if (string_compare_case_sensitive(s, &INFINITY_STR) == 0)
485+
if (strings_equal_case_sensitive(s, &INFINITY_STR))
486486
return std::numeric_limits<double>::infinity();
487-
else if (string_compare_case_sensitive(s, &NEGATIVE_INFINITY_STR) == 0)
487+
else if (strings_equal_case_sensitive(s, &NEGATIVE_INFINITY_STR))
488488
return -std::numeric_limits<double>::infinity();
489489

490490
return value_stringToDoubleImpl(s->data, s->size, ok);
@@ -493,7 +493,7 @@ extern "C"
493493
/*! Converts the given string to boolean. */
494494
bool value_stringToBool(const StringPtr *s)
495495
{
496-
return s->size != 0 && string_compare_case_insensitive(s, &FALSE_STR) != 0 && string_compare_case_insensitive(s, &ZERO_STR) != 0;
496+
return s->size != 0 && !strings_equal_case_insensitive(s, &FALSE_STR) && !strings_equal_case_insensitive(s, &ZERO_STR);
497497
}
498498

499499
/* operations */

src/scratch/value_functions_p.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -332,11 +332,11 @@ extern "C"
332332
}
333333

334334
// Special values
335-
if (string_compare_raw_case_sensitive(s, n, INFINITY_STR.data, INFINITY_STR.size) == 0) {
335+
if (raw_strings_equal_case_sensitive(s, n, INFINITY_STR.data, INFINITY_STR.size)) {
336336
if (ok)
337337
*ok = true;
338338
return std::numeric_limits<double>::infinity();
339-
} else if (string_compare_raw_case_sensitive(s, n, NEGATIVE_INFINITY_STR.data, NEGATIVE_INFINITY_STR.size) == 0) {
339+
} else if (raw_strings_equal_case_sensitive(s, n, NEGATIVE_INFINITY_STR.data, NEGATIVE_INFINITY_STR.size)) {
340340
if (ok)
341341
*ok = true;
342342
return -std::numeric_limits<double>::infinity();

0 commit comments

Comments
 (0)