Matches expected type to a type of a value.
        The expected type can be specified by a type, type name or [[TypeCode]].

        :param expected_type: an expected type to match.

        :param actual_value: a value to match its type to the expected one.

        :return: true if types are matching and false if they don't.

def match_value(expected_type, actual_value):
        """
        Matches expected type to a type of a value.
        The expected type can be specified by a type, type name or [[TypeCode]].

        :param expected_type: an expected type to match.

        :param actual_value: a value to match its type to the expected one.

        :return: true if types are matching and false if they don't.
        """
        if expected_type == None:
            return True
        if actual_value == None:
            raise Exception("Actual value cannot be null")

        return TypeMatcher.match_type(expected_type, type(actual_value))