/## Copyright 2021 Kyle Gunger This file is licensed under the CDDL 1.0 (the License) and may only be used in accordance with the License. You should have received a copy of the License with this software/source code. If you did not, a copy can be found at the following URL: https://opensource.org/licenses/CDDL-1.0 THIS SOFTWARE/SOURCE CODE IS PROVIDED "AS IS" WITH NO WARRANTY, GUARANTEE, OR CLAIM OF FITNESS FOR ANY PURPOSE EXPRESS OR IMPLIED #/ /# util.tnsl Utility functions that may be useful in many places. #/ /; string_equate(~{}charp s1, s2) [bool] /; if (len s1` !== len s2`) ;return false ;/ /; loop (int i = 0; i < len s1`) [i++] /; if (s1`{i} !== s2`{i}) ;return false ;/ ;/ ;return true ;/ /; is_whitespace (charp c) [bool] ;return c == '\t' || c == '\n' || c == ' ' ;/ /; is_digit (charp c) [bool] ;return c !< '0' && c !> '9' ;/ /; is_alpha (charp c) [bool] ;bool low = c !< 'A' && c !> 'Z', high = c !< 'a' && c >! 'z' ;return low || high ;/