diff options
| author | _ov4 <ov4@ov4.org> | 2026-10-20 11:00:16 +0000 |
|---|---|---|
| committer | _ov4 <ov4@ov4.org> | 2026-10-20 11:00:16 +0000 |
| commit | 0c4db4fea1960571318444bd39593533b04b3716 (patch) | |
| tree | c0370d23f10225a6ee3dfe73590f38ca05877606 /tests/library/exp-string/program.cps | |
| parent | cf9af14fe749c52473fdf5a327c3e935e45bf0e7 (diff) | |
feat(library): add experimental string RIGHT function
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'tests/library/exp-string/program.cps')
| -rw-r--r-- | tests/library/exp-string/program.cps | 29 |
1 files changed, 24 insertions, 5 deletions
diff --git a/tests/library/exp-string/program.cps b/tests/library/exp-string/program.cps index c9dad8a..f8c037f 100644 --- a/tests/library/exp-string/program.cps +++ b/tests/library/exp-string/program.cps @@ -39,8 +39,27 @@ DECLARE Heap : _EXP_STRING Heap <- NEW _EXP_STRING((C_STRING)"heap") CALL _EXP_STRING_OUTPUT(Heap) DELETE Heap -DECLARE Letters : _EXP_STRING((C_STRING)"ABCDEFGH") -CALL _EXP_STRING_OUTPUT(_EXP_STRING_LEFT(Letters, 3)) -OUTPUT _EXP_STRING_LENGTH(_EXP_STRING_LEFT(Empty, 2)), ":", _EXP_STRING_LENGTH(_EXP_STRING_LEFT(Letters, 0)), ":", _EXP_STRING_LENGTH(_EXP_STRING_LEFT(Letters, -1)) -CALL _EXP_STRING_OUTPUT(_EXP_STRING_LEFT(Letters, 20)) -OUTPUT _EXP_STRING_LENGTH(_EXP_STRING_LEFT(Nuls & A, 4)) +CALL CheckLeft() +CALL CheckRight() + +PROCEDURE CheckLeft() + DECLARE Letters : _EXP_STRING((C_STRING)"ABCDEFGH") + DECLARE Empty : _EXP_STRING + DECLARE Nuls : _EXP_STRING(3, (C_CHAR)'\0') + DECLARE A : _EXP_STRING((C_STRING)"hello") + CALL _EXP_STRING_OUTPUT(_EXP_STRING_LEFT(Letters, 3)) + OUTPUT _EXP_STRING_LENGTH(_EXP_STRING_LEFT(Empty, 2)), ":", _EXP_STRING_LENGTH(_EXP_STRING_LEFT(Letters, 0)), ":", _EXP_STRING_LENGTH(_EXP_STRING_LEFT(Letters, -1)) + CALL _EXP_STRING_OUTPUT(_EXP_STRING_LEFT(Letters, 20)) + OUTPUT _EXP_STRING_LENGTH(_EXP_STRING_LEFT(Nuls & A, 4)) +ENDPROCEDURE + +PROCEDURE CheckRight() + DECLARE Letters : _EXP_STRING((C_STRING)"ABCDEFGH") + DECLARE Empty : _EXP_STRING + DECLARE Nuls : _EXP_STRING(3, (C_CHAR)'\0') + DECLARE A : _EXP_STRING((C_STRING)"hello") + CALL _EXP_STRING_OUTPUT(_EXP_STRING_RIGHT(Letters, 3)) + OUTPUT _EXP_STRING_LENGTH(_EXP_STRING_RIGHT(Empty, 2)), ":", _EXP_STRING_LENGTH(_EXP_STRING_RIGHT(Letters, 0)), ":", _EXP_STRING_LENGTH(_EXP_STRING_RIGHT(Letters, -1)) + CALL _EXP_STRING_OUTPUT(_EXP_STRING_RIGHT(Letters, 20)) + OUTPUT _EXP_STRING_LENGTH(_EXP_STRING_RIGHT(A & Nuls, 4)) +ENDPROCEDURE |
