mirror of
https://github.com/Mercury-Language/mercury.git
synced 2026-04-20 11:54:02 +00:00
std_util:type_name/1. compiler/base_type_info.m: compiler/polymorphism.m: library/mercury_builtin.m: Add module names to base_type_infos. library/io.m: library/term.m: Check module names as well as type names for special cases. Add module qualifiers to terms that represent types (That is, when converting type_infos to terms). library/std_util.m: Add type_ctor_module_name/1, add an argument to type_ctor_name_and_arity for the module name. Add module qualifiers to the name returned by type_name. runtime/type_info.h: Define the offset fo type module names, add MR_TYPECTOR_GET_HOT_MODULE_NAME and MR_BASE_TYPEINFO_GET_TYPE_MODULE_NAME tests/hard_coded/higher_order_type_manip.exp: tests/hard_coded/write.exp: tests/hard_coded/write_reg1.exp: Update test case expected output with module qualifiers where needed.
48 lines
712 B
Plaintext
48 lines
712 B
Plaintext
var("X") + int(3) * var("X^2") ; (type)
|
|
{ type }
|
|
{ :- }
|
|
{ blah }
|
|
blah ; (type), (type) * blah ; (type)
|
|
((blah ; blah), blah) * blah ; blah
|
|
(type) * blah ; (type)
|
|
TESTING DISCRIMINATED UNIONS
|
|
one
|
|
two
|
|
three
|
|
apple([9, 5, 1])
|
|
banana([three, one, two])
|
|
zop(3.30000000000000, 2.03000000000000)
|
|
zip(3, 2)
|
|
zap(3, -2.11100000000000)
|
|
wombat
|
|
foo
|
|
|
|
TESTING POLYMORPHISM
|
|
poly_one([2399.30000000000])
|
|
poly_two(3)
|
|
poly_three(3.33000000000000, 4, poly_one(9.11000000000000))
|
|
|
|
TESTING BUILTINS
|
|
""
|
|
"Hello, world\n"
|
|
"Foo%sFoo"
|
|
"\""
|
|
'a'
|
|
'&'
|
|
3.14159000000000
|
|
1.12832498300000e-21
|
|
2.23954899000000e+23
|
|
-65
|
|
4
|
|
univ(["hi! I\'m a univ!"] : list:list(string))
|
|
'<<predicate>>'
|
|
|
|
TESTING OTHER TYPES
|
|
1
|
|
0
|
|
1
|
|
empty
|
|
qwerty(4)
|
|
array([1, 2, 3, 4])
|
|
|