diff options
Diffstat (limited to 'tests/library/exp-string/program.cps')
| -rw-r--r-- | tests/library/exp-string/program.cps | 168 |
1 files changed, 84 insertions, 84 deletions
diff --git a/tests/library/exp-string/program.cps b/tests/library/exp-string/program.cps index 0adf86c..2e45dc3 100644 --- a/tests/library/exp-string/program.cps +++ b/tests/library/exp-string/program.cps @@ -1,43 +1,43 @@ -INCLUDE "../../../pseudocode-lib/_exp_string.cps" -FUNCTION Echo(S : _EXP_STRING) RETURNS _EXP_STRING +INCLUDE "../../../pseudocode-lib/string.cps" +FUNCTION Echo(S : STRING) RETURNS STRING RETURN S ENDFUNCTION -DECLARE A : _EXP_STRING((C_STRING)"hello") -DECLARE B : _EXP_STRING(A) +DECLARE A : STRING((C_STRING)"hello") +DECLARE B : STRING(A) B <- (C_STRING)"world" B <- B -CALL _EXP_STRING_OUTPUT(A & B) -DECLARE Empty : _EXP_STRING -OUTPUT _EXP_STRING_LENGTH(Empty) -DECLARE Nuls : _EXP_STRING(3, (C_CHAR)'\0') -OUTPUT _EXP_STRING_LENGTH(Nuls) -DECLARE Long : _EXP_STRING(20000, (C_CHAR)'x') +OUTPUT (A & B) +DECLARE Empty : STRING +OUTPUT LENGTH(Empty) +DECLARE Nuls : STRING(3, (C_CHAR)'\0') +OUTPUT LENGTH(Nuls) +DECLARE Long : STRING(20000, (C_CHAR)'x') DECLARE I : INTEGER FOR I <- 1 TO 100 Long <- Long & A NEXT I -OUTPUT _EXP_STRING_LENGTH(Long) +OUTPUT LENGTH(Long) Long <- Echo(Long) -OUTPUT _EXP_STRING_LENGTH(Long) -CALL _EXP_STRING_OUTPUT(_EXP_STRING_NUM_TO_STR(42) & _EXP_STRING_NUM_TO_STR(1.25)) -DECLARE Number : _EXP_STRING((C_STRING)"12.5") -OUTPUT _EXP_STRING_STR_TO_NUM(Number) = 12.5 +OUTPUT LENGTH(Long) +OUTPUT (NUM_TO_STR(42) & NUM_TO_STR(1.25)) +DECLARE Number : STRING((C_STRING)"12.5") +OUTPUT STR_TO_NUM(Number) = 12.5 TRY Number <- (C_STRING)"12x" - OUTPUT _EXP_STRING_STR_TO_NUM(Number) + OUTPUT STR_TO_NUM(Number) CATCH OUTPUT "conversion caught" ENDTRY TRY - DECLARE Invalid : _EXP_STRING(-1, (C_CHAR)'x') + DECLARE Invalid : STRING(-1, (C_CHAR)'x') CATCH OUTPUT "length caught" ENDTRY -CALL _EXP_STRING_NUM_TO_STR(99) +CALL NUM_TO_STR(99) CALL Echo(Long) -DECLARE Heap : _EXP_STRING -Heap <- NEW _EXP_STRING((C_STRING)"heap") -CALL _EXP_STRING_OUTPUT(Heap) +DECLARE Heap : STRING +Heap <- NEW STRING((C_STRING)"heap") +OUTPUT (Heap) DELETE Heap CALL CheckLeft() CALL CheckRight() @@ -49,90 +49,90 @@ CALL CheckChr() CALL CheckIsNum() 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)) + DECLARE Letters : STRING((C_STRING)"ABCDEFGH") + DECLARE Empty : STRING + DECLARE Nuls : STRING(3, (C_CHAR)'\0') + DECLARE A : STRING((C_STRING)"hello") + OUTPUT (LEFT(Letters, 3)) + OUTPUT LENGTH(LEFT(Empty, 2)), ":", LENGTH(LEFT(Letters, 0)), ":", LENGTH(LEFT(Letters, -1)) + OUTPUT (LEFT(Letters, 20)) + OUTPUT LENGTH(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)) + DECLARE Letters : STRING((C_STRING)"ABCDEFGH") + DECLARE Empty : STRING + DECLARE Nuls : STRING(3, (C_CHAR)'\0') + DECLARE A : STRING((C_STRING)"hello") + OUTPUT (RIGHT(Letters, 3)) + OUTPUT LENGTH(RIGHT(Empty, 2)), ":", LENGTH(RIGHT(Letters, 0)), ":", LENGTH(RIGHT(Letters, -1)) + OUTPUT (RIGHT(Letters, 20)) + OUTPUT LENGTH(RIGHT(A & Nuls, 4)) ENDPROCEDURE PROCEDURE CheckMid() - DECLARE Letters : _EXP_STRING((C_STRING)"ABCDEFGH") - DECLARE Empty : _EXP_STRING - DECLARE Nuls : _EXP_STRING(3, (C_CHAR)'\0') - CALL _EXP_STRING_OUTPUT(_EXP_STRING_MID(Letters, 2, 3)) - CALL _EXP_STRING_OUTPUT(_EXP_STRING_MID(Letters, -9223372036854775808, 2)) - CALL _EXP_STRING_OUTPUT(_EXP_STRING_MID(Letters, 7, 9223372036854775807)) - OUTPUT _EXP_STRING_LENGTH(_EXP_STRING_MID(Empty, 1, 2)), ":", _EXP_STRING_LENGTH(_EXP_STRING_MID(Letters, 9223372036854775807, 2)) - OUTPUT _EXP_STRING_LENGTH(_EXP_STRING_MID(Letters, 2, 0)), ":", _EXP_STRING_LENGTH(_EXP_STRING_MID(Letters, 2, -1)) - OUTPUT _EXP_STRING_LENGTH(_EXP_STRING_MID(Nuls & Letters, 2, 4)) + DECLARE Letters : STRING((C_STRING)"ABCDEFGH") + DECLARE Empty : STRING + DECLARE Nuls : STRING(3, (C_CHAR)'\0') + OUTPUT (MID(Letters, 2, 3)) + OUTPUT (MID(Letters, -9223372036854775808, 2)) + OUTPUT (MID(Letters, 7, 9223372036854775807)) + OUTPUT LENGTH(MID(Empty, 1, 2)), ":", LENGTH(MID(Letters, 9223372036854775807, 2)) + OUTPUT LENGTH(MID(Letters, 2, 0)), ":", LENGTH(MID(Letters, 2, -1)) + OUTPUT LENGTH(MID(Nuls & Letters, 2, 4)) ENDPROCEDURE PROCEDURE CheckLCase() - DECLARE Mixed : _EXP_STRING((C_STRING)"AbC@19") - DECLARE Empty : _EXP_STRING - DECLARE Nuls : _EXP_STRING(2, (C_CHAR)'\0') - CALL _EXP_STRING_OUTPUT(_EXP_STRING_LCASE(Mixed)) - CALL _EXP_STRING_OUTPUT(Mixed) + DECLARE Mixed : STRING((C_STRING)"AbC@19") + DECLARE Empty : STRING + DECLARE Nuls : STRING(2, (C_CHAR)'\0') + OUTPUT (LCASE(Mixed)) + OUTPUT (Mixed) DECLARE Lower : CHAR - Lower <- _EXP_STRING_LCASE('W') - OUTPUT Lower, ":", _EXP_STRING_LCASE('w'), ":", _EXP_STRING_LCASE('@') - OUTPUT _EXP_STRING_LENGTH(_EXP_STRING_LCASE(Empty)), ":", _EXP_STRING_LENGTH(_EXP_STRING_LCASE(Nuls & Mixed)) - CALL _EXP_STRING_OUTPUT(_EXP_STRING_MID(_EXP_STRING_LCASE(Nuls & Mixed), 3, 3)) + Lower <- LCASE('W') + OUTPUT Lower, ":", LCASE('w'), ":", LCASE('@') + OUTPUT LENGTH(LCASE(Empty)), ":", LENGTH(LCASE(Nuls & Mixed)) + OUTPUT (MID(LCASE(Nuls & Mixed), 3, 3)) ENDPROCEDURE PROCEDURE CheckUCase() - DECLARE Mixed : _EXP_STRING((C_STRING)"AbC@19") - DECLARE Empty : _EXP_STRING - DECLARE Nuls : _EXP_STRING(2, (C_CHAR)'\0') - CALL _EXP_STRING_OUTPUT(_EXP_STRING_UCASE(Mixed)) - CALL _EXP_STRING_OUTPUT(Mixed) + DECLARE Mixed : STRING((C_STRING)"AbC@19") + DECLARE Empty : STRING + DECLARE Nuls : STRING(2, (C_CHAR)'\0') + OUTPUT (UCASE(Mixed)) + OUTPUT (Mixed) DECLARE Upper : CHAR - Upper <- _EXP_STRING_UCASE('h') - OUTPUT Upper, ":", _EXP_STRING_UCASE('H'), ":", _EXP_STRING_UCASE('@') - OUTPUT _EXP_STRING_LENGTH(_EXP_STRING_UCASE(Empty)), ":", _EXP_STRING_LENGTH(_EXP_STRING_UCASE(Nuls & Mixed)) - CALL _EXP_STRING_OUTPUT(_EXP_STRING_MID(_EXP_STRING_UCASE(Nuls & Mixed), 3, 3)) + Upper <- UCASE('h') + OUTPUT Upper, ":", UCASE('H'), ":", UCASE('@') + OUTPUT LENGTH(UCASE(Empty)), ":", LENGTH(UCASE(Nuls & Mixed)) + OUTPUT (MID(UCASE(Nuls & Mixed), 3, 3)) ENDPROCEDURE PROCEDURE CheckAsc() - DECLARE Letters : _EXP_STRING((C_STRING)"ABCDEFGH") - DECLARE Empty : _EXP_STRING - DECLARE Nuls : _EXP_STRING(2, (C_CHAR)'\0') - DECLARE High : _EXP_STRING(1, (C_CHAR)255) - OUTPUT _EXP_STRING_ASC('A'), ":", _EXP_STRING_ASC(Letters) - OUTPUT _EXP_STRING_ASC(Empty), ":", _EXP_STRING_ASC(Nuls), ":", _EXP_STRING_ASC('\0') - OUTPUT _EXP_STRING_ASC(High) + DECLARE Letters : STRING((C_STRING)"ABCDEFGH") + DECLARE Empty : STRING + DECLARE Nuls : STRING(2, (C_CHAR)'\0') + DECLARE High : STRING(1, (C_CHAR)255) + OUTPUT ASC('A'), ":", ASC(Letters) + OUTPUT ASC(Empty), ":", ASC(Nuls), ":", ASC('\0') + OUTPUT ASC(High) ENDPROCEDURE PROCEDURE CheckChr() - CALL _EXP_STRING_OUTPUT(_EXP_STRING_CHR(65) & _EXP_STRING_CHR(90)) - OUTPUT _EXP_STRING_ASC(_EXP_STRING_CHR(_EXP_STRING_ASC('A'))) - OUTPUT _EXP_STRING_LENGTH(_EXP_STRING_CHR(0)), ":", _EXP_STRING_ASC(_EXP_STRING_CHR(0)) - OUTPUT _EXP_STRING_ASC(_EXP_STRING_CHR(321)), ":", _EXP_STRING_ASC(_EXP_STRING_CHR(-1)) + OUTPUT (CHR(65) & CHR(90)) + OUTPUT ASC(CHR(ASC('A'))) + OUTPUT LENGTH(CHR(0)), ":", ASC(CHR(0)) + OUTPUT ASC(CHR(321)), ":", ASC(CHR(-1)) ENDPROCEDURE PROCEDURE CheckIsNum() - DECLARE Number : _EXP_STRING((C_STRING)"12.5") - DECLARE Junk : _EXP_STRING((C_STRING)"12x") - DECLARE Empty : _EXP_STRING - DECLARE Leading : _EXP_STRING((C_STRING)" 12.5") - DECLARE Trailing : _EXP_STRING((C_STRING)"12.5 ") - DECLARE Whitespace : _EXP_STRING((C_STRING)" ") - OUTPUT _EXP_STRING_IS_NUM(Number), ":", _EXP_STRING_IS_NUM(Junk), ":", _EXP_STRING_IS_NUM(Empty) - OUTPUT _EXP_STRING_IS_NUM(Leading), ":", _EXP_STRING_IS_NUM(Trailing), ":", _EXP_STRING_IS_NUM(Whitespace) - OUTPUT _EXP_STRING_IS_NUM(Number & _EXP_STRING_CHR(0)), ":", _EXP_STRING_IS_NUM(_EXP_STRING_CHR(0) & Number) + DECLARE Number : STRING((C_STRING)"12.5") + DECLARE Junk : STRING((C_STRING)"12x") + DECLARE Empty : STRING + DECLARE Leading : STRING((C_STRING)" 12.5") + DECLARE Trailing : STRING((C_STRING)"12.5 ") + DECLARE Whitespace : STRING((C_STRING)" ") + OUTPUT IS_NUM(Number), ":", IS_NUM(Junk), ":", IS_NUM(Empty) + OUTPUT IS_NUM(Leading), ":", IS_NUM(Trailing), ":", IS_NUM(Whitespace) + OUTPUT IS_NUM(Number & CHR(0)), ":", IS_NUM(CHR(0) & Number) ENDPROCEDURE |
