package org.jerlang.erts; import org.jerlang.erts.erlang.ErlangAbs; import org.jerlang.erts.erlang.ErlangApply; import org.jerlang.erts.erlang.ErlangAtomMinus; import org.jerlang.erts.erlang.ErlangAtomMultiply; import org.jerlang.erts.erlang.ErlangAtomPlus; import org.jerlang.erts.erlang.ErlangAtomPlusPlus; import org.jerlang.erts.erlang.ErlangBinaryPart; import org.jerlang.erts.erlang.ErlangBitstringToList; import org.jerlang.erts.erlang.ErlangByteSize; import org.jerlang.erts.erlang.ErlangDisplay; import org.jerlang.erts.erlang.ErlangError; import org.jerlang.erts.erlang.ErlangFunctionExported; import org.jerlang.erts.erlang.ErlangGet; import org.jerlang.erts.erlang.ErlangGetKeys; import org.jerlang.erts.erlang.ErlangGetModuleInfo; import org.jerlang.erts.erlang.ErlangHalt; import org.jerlang.erts.erlang.ErlangHd; import org.jerlang.erts.erlang.ErlangIntegerToBinary; import org.jerlang.erts.erlang.ErlangIntegerToList; import org.jerlang.erts.erlang.ErlangIsAtom; import org.jerlang.erts.erlang.ErlangIsBinary; import org.jerlang.erts.erlang.ErlangIsBitstr; import org.jerlang.erts.erlang.ErlangIsBoolean; import org.jerlang.erts.erlang.ErlangIsFunction; import org.jerlang.erts.erlang.ErlangIsInteger; import org.jerlang.erts.erlang.ErlangIsList; import org.jerlang.erts.erlang.ErlangIsMap; import org.jerlang.erts.erlang.ErlangIsNumber; import org.jerlang.erts.erlang.ErlangIsPid; import org.jerlang.erts.erlang.ErlangIsRecord; import org.jerlang.erts.erlang.ErlangIsReference; import org.jerlang.erts.erlang.ErlangIsTuple; import org.jerlang.erts.erlang.ErlangLength; import org.jerlang.erts.erlang.ErlangListToAtom; import org.jerlang.erts.erlang.ErlangListToBitstring; import org.jerlang.erts.erlang.ErlangListToInteger; import org.jerlang.erts.erlang.ErlangMakeRef; import org.jerlang.erts.erlang.ErlangOpenPort; import org.jerlang.erts.erlang.ErlangPortClose; import org.jerlang.erts.erlang.ErlangPortControl; import org.jerlang.erts.erlang.ErlangProcessFlag; import org.jerlang.erts.erlang.ErlangPut; import org.jerlang.erts.erlang.ErlangRegister; import org.jerlang.erts.erlang.ErlangRem; import org.jerlang.erts.erlang.ErlangSelf; import org.jerlang.erts.erlang.ErlangSendAfter; import org.jerlang.erts.erlang.ErlangSetelement; import org.jerlang.erts.erlang.ErlangSpawn; import org.jerlang.erts.erlang.ErlangSystemInfo; import org.jerlang.erts.erlang.ErlangThrow; import org.jerlang.erts.erlang.ErlangTl; import org.jerlang.erts.erlang.ErlangTupleSize; import org.jerlang.erts.erlang.ErlangTupleToList; import org.jerlang.exception.ThrowException; import org.jerlang.type.Atom; import org.jerlang.type.Binary; import org.jerlang.type.BitString; import org.jerlang.type.Fun; import org.jerlang.type.Integer; import org.jerlang.type.List; import org.jerlang.type.PID; import org.jerlang.type.PortID; import org.jerlang.type.Reference; import org.jerlang.type.Str; import org.jerlang.type.Term; import org.jerlang.type.TimerReference; import org.jerlang.type.Tuple; /** * http://www.erlang.org/doc/man/erlang.html */ public class Erlang { public static Integer atom_minus(Integer a, Integer b) { return ErlangAtomMinus.atom_minus_2(a, b); } public static Integer atom_multiply(Integer a, Integer b) { return ErlangAtomMultiply.atom_multiply_2(a, b); } public static Integer atom_plus(Integer a, Integer b) { return ErlangAtomPlus.atom_plus_2(a, b); } public static List atom_plus_plus(List a, List b) { return ErlangAtomPlusPlus.atom_plus_plus_2(a, b); } // -------------------------------------------------------------- public static Integer abs(Integer integer) { return ErlangAbs.abs_1(integer); } public static Term apply(Term m, Term f, Term a) throws Error { return ErlangApply.apply_3(m, f, a); } public static Binary binary_part(Binary subject, Tuple posLen) { return ErlangBinaryPart.binary_part_2(subject, posLen); } public static Binary binary_part(Binary subject, Integer start, Integer length) { return ErlangBinaryPart.binary_part_3(subject, start, length); } public static List bitstring_to_list(BitString bitString) { return ErlangBitstringToList.bitstring_to_list_1(bitString); } public static Integer byte_size(BitString bitString) { return ErlangByteSize.byte_size_1(bitString); } public static Term display(Term term) { return ErlangDisplay.display_1(term); } public static void error(Term reason) { ErlangError.error_1(reason); } public static void error(Term reason, List where) { ErlangError.error_2(reason, where); } public static Term function_exported(Atom module, Atom function, Integer arity) { return ErlangFunctionExported.function_exported_3(module, function, arity); } public static List get() { return ErlangGet.get_0(); } public static Term get(Term key) { return ErlangGet.get_1(key); } public static List get_keys() { return ErlangGetKeys.get_keys_0(); } public static List get_keys(Term value) { return ErlangGetKeys.get_keys_1(value); } public static Term get_module_info(Atom module, Atom item) { return ErlangGetModuleInfo.get_module_info_2(module, item); } public static void halt() { ErlangHalt.halt_0(); } public static void halt(Term status) { ErlangHalt.halt_1(status); } public static void halt(Term status, List options) { ErlangHalt.halt_2(status, options); } public static Term hd(List list) { return ErlangHd.hd_1(list); } public static Binary integer_to_binary(Integer integer) { return ErlangIntegerToBinary.integer_to_binary_1(integer); } public static Binary integer_to_binary(Integer integer, Integer base) { return ErlangIntegerToBinary.integer_to_binary_2(integer, base); } public static Str integer_to_list(Integer integer) { return ErlangIntegerToList.integer_to_list_1(integer); } public static List integer_to_list(Integer integer, Integer base) { return ErlangIntegerToList.integer_to_list_2(integer, base); } public static Term is_atom(Term term) { return ErlangIsAtom.is_atom_1(term); } public static Term is_binary(Term term) { return ErlangIsBinary.is_binary_1(term); } public static Term is_bitstr(Term term) { return ErlangIsBitstr.is_bitstr_1(term); } public static Term is_boolean(Term term) { return ErlangIsBoolean.is_boolean_1(term); } public static Term is_function(Term term) { return ErlangIsFunction.is_function_1(term); } public static Term is_integer(Term term) { return ErlangIsInteger.is_integer_1(term); } public static Term is_list(Term term) { return ErlangIsList.is_list_1(term); } public static Term is_map(Term term) { return ErlangIsMap.is_map_1(term); } public static Term is_number(Term term) { return ErlangIsNumber.is_number_1(term); } public static Term is_pid(Term term) { return ErlangIsPid.is_pid_1(term); } public static Term is_record(Term term, Term recordTag) { return ErlangIsRecord.is_record_2(term, recordTag); } public static Term is_reference(Term term) { return ErlangIsReference.is_reference_1(term); } public static Term is_tuple(Term term) { return ErlangIsTuple.is_tuple_1(term); } public static Integer length(List list) { return ErlangLength.length_1(list); } public static Atom list_to_atom(List string) { return ErlangListToAtom.list_to_atom_1(string); } public static BitString list_to_bitstring(List list) { return ErlangListToBitstring.list_to_bitstring_1(list); } public static Integer list_to_integer(List string) { return ErlangListToInteger.list_to_integer_1(string); } public static Integer list_to_integer(List string, Integer base) { return ErlangListToInteger.list_to_integer_2(string, base); } public static Reference make_ref() { return ErlangMakeRef.make_ref_0(); } public static PortID open_port(Tuple portName, List portSettings) { return ErlangOpenPort.open_port_2(portName, portSettings); } public static Atom port_close(Term port) { return ErlangPortClose.port_close_1(port); } public static Term port_control(Term portId, Integer operation, Term data) { return ErlangPortControl.port_control_3(portId, operation, data); } public static Term process_flag(Atom flag, Term value) { return ErlangProcessFlag.process_flag_2(flag, value); } public static Term put(Term key, Term val) { return ErlangPut.put_2(key, val); } public static Term register(Atom regName, PID pid) { return ErlangRegister.register_2(regName, pid); } public static Integer rem(Integer a, Integer b) { return ErlangRem.rem_2(a, b); } public static PID self() { return ErlangSelf.self_0(); } public static TimerReference send_after(Integer time, PID pid, Term msg) { return ErlangSendAfter.send_after_3(time, pid, msg); } public static Tuple setelement(Integer index, Tuple tuple, Term value) { return ErlangSetelement.setelement_3(index, tuple, value); } public static PID spawn(Fun fun) { return ErlangSpawn.spawn_1(fun); } public static PID spawn(Atom m, Atom f, List a) { return ErlangSpawn.spawn_3(m, f, a); } public static Term system_info(Term term) { return ErlangSystemInfo.system_info_1(term); } public static void _throw(Term reason) throws ThrowException { ErlangThrow.throw_1(reason); } public static Term tl(List list) { return ErlangTl.tl_1(list); } public static Integer tuple_size(Tuple tuple) { return ErlangTupleSize.tuple_size_1(tuple); } public static List tuple_to_list(Tuple tuple) { return ErlangTupleToList.tuple_to_list_1(tuple); } }