/* * Created by PyramIDE. * User: フランスのトトロ aka (David RENÉ) * Date: 09/07/2017 * Time: 00:52 * © David RENÉ */ transmit tools/basis.anubis transmit calexium_lib/types/version.anubis public type DB_Version_Compare_Result: less, more, equal, equal_but_sign . public type DB_Version: db_version ( Version version, //version of database String db_hash //signature like SHA1 etc ) . public define DB_Version db_version ( String version_str, String hash )= db_version(version(version_str), hash) . public define DB_Version db_version ( String version_str )= db_version(version(version_str), "") . public define DB_Version db_v_0 = db_version(version(0), "") . public define String String s + DB_Version db_v = s + db_v.version + " " + db_v.db_hash . public define String DB_Version db_v + String s = db_v.version + " " + db_v.db_hash + s . public define DB_Version_Compare_Result compare_db_version ( DB_Version v_x, DB_Version v_y ) = if v_x.version.numeric +< v_y.version.numeric then less else if v_x.version.numeric = v_y.version.numeric then if v_x.db_hash = v_y.db_hash then equal else equal_but_sign else more . public define Bool db_version_less ( DB_Version v_x, DB_Version v_y )= // +=< below is unsigned comparison for Word32 if v_x.version.numeric +=< v_y.version.numeric then true else false .