mirror of
https://github.com/Mercury-Language/mercury.git
synced 2025-12-14 13:23:53 +00:00
Estimated hours taken: 4 Branches: main Add some more code to the temporary, partial Java versions of the Mercury library modules. This allows us to test the Java back-end on a few extra test cases and could help prevent regression errors. mercury/java/library/array.java: mercury/java/library/benchmarking.java: mercury/java/library/bintree.java: mercury/java/library/bintree_set.java: mercury/java/library/construct.java: mercury/java/library/dir.java: mercury/java/library/exception.java: mercury/java/library/lexer.java: mercury/java/library/math.java: mercury/java/library/parser.java: mercury/java/library/random.java: mercury/java/library/rtti_implementation.java: mercury/java/library/set_ordlist.java: mercury/java/library/set_unordlist.java: mercury/java/library/store.java: mercury/java/library/table_builtin.java: mercury/java/library/term_io.java: mercury/java/library/varset.java: Added these files. They are partial (or empty) versions of the Mercury library modules written in Java. mercury/java/library/bool.java: mercury/java/library/builtin.java: mercury/java/library/io.java: mercury/java/library/mr_int.java: mercury/java/library/private_builtin.java: mercury/java/library/std_util.java: mercury/java/library/string.java: Add additional code to these files.
63 lines
2.2 KiB
Java
63 lines
2.2 KiB
Java
|
|
//
|
|
// Copyright (C) 2002-2003 The University of Melbourne.
|
|
// This file may only be copied under the terms of the GNU Library General
|
|
// Public License - see the file COPYING.LIB in the Mercury distribution.
|
|
//
|
|
//
|
|
|
|
package mercury;
|
|
|
|
public class private_builtin
|
|
{
|
|
public static class type_info_1
|
|
{
|
|
public int arity;
|
|
public int type_ctor_version;
|
|
public mercury.runtime.TypeCtorRep type_ctor_rep;
|
|
public int type_ctor_num_ptags; // if DU
|
|
public mercury.runtime.MethodPtr unify_pred;
|
|
public mercury.runtime.MethodPtr compare_pred;
|
|
public java.lang.String type_ctor_module_name;
|
|
public java.lang.String type_ctor_name;
|
|
public mercury.runtime.TypeFunctors type_functors;
|
|
public mercury.runtime.TypeLayout type_layout;
|
|
public int type_ctor_num_functors;
|
|
}
|
|
|
|
public static mercury.builtin.comparison_result_0 builtin_compare_int_3_p_0(int val1, int val2)
|
|
{
|
|
if(val1 == val2)
|
|
return new mercury.builtin.comparison_result_0(mercury.builtin.comparison_result_0.f_equal);
|
|
else if(val1 < val2)
|
|
return new mercury.builtin.comparison_result_0(mercury.builtin.comparison_result_0.f_less_than);
|
|
else
|
|
return new mercury.builtin.comparison_result_0(mercury.builtin.comparison_result_0.f_greater_than);
|
|
|
|
}
|
|
|
|
public static mercury.builtin.comparison_result_0 builtin_compare_string_3_p_0(java.lang.String string1, java.lang.String string2)
|
|
{
|
|
int value = string1.compareTo(string2);
|
|
|
|
if(value == 0)
|
|
return new mercury.builtin.comparison_result_0(mercury.builtin.comparison_result_0.f_equal);
|
|
else if(value < 0)
|
|
return new mercury.builtin.comparison_result_0(mercury.builtin.comparison_result_0.f_less_than);
|
|
else
|
|
return new mercury.builtin.comparison_result_0(mercury.builtin.comparison_result_0.f_greater_than);
|
|
}
|
|
|
|
|
|
public static int builtin_strcmp_3_p_0(java.lang.String string1, java.lang.String string2)
|
|
{
|
|
return string1.compareTo(string2);
|
|
}
|
|
|
|
public static void compare_error_0_p_0()
|
|
{
|
|
throw new java.lang.Error("internal error in compare/3");
|
|
}
|
|
}
|
|
|