-
Notifications
You must be signed in to change notification settings - Fork 187
Expand file tree
/
Copy pathut_data_value.tpb
More file actions
67 lines (58 loc) · 1.9 KB
/
ut_data_value.tpb
File metadata and controls
67 lines (58 loc) · 1.9 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
create or replace type body ut_data_value as
/*
utPLSQL - Version 3
Copyright 2016 - 2021 utPLSQL Project
Licensed under the Apache License, Version 2.0 (the "License"):
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
order member function compare(a_other ut_data_value) return integer is
begin
return compare_implementation(a_other);
end;
member function is_diffable return boolean is
begin
return false;
end;
member function is_empty return boolean is
begin
raise value_error;
end;
member function diff( a_other ut_data_value, a_match_options ut_matcher_options ) return varchar2 is
begin
return null;
end;
member function is_multi_line return boolean is
begin
return false;
end;
member function get_object_info return varchar2 is
begin
return self.data_type;
end;
final member function to_string_report(a_add_new_line_for_multi_line boolean := false, a_with_object_info boolean := true) return varchar2 is
l_result varchar2(32767);
l_info varchar2(32767);
begin
if a_with_object_info then
l_info := '('||get_object_info()||')';
end if;
if self.is_multi_line() then
l_result :=
l_info || chr(10) || ut_utils.indent_lines( rtrim(self.to_string(),chr(10)), a_include_first_line =>true );
if a_add_new_line_for_multi_line then
l_result := l_result || chr(10);
end if;
else
l_result := self.to_string() || ' ' || l_info;
end if;
return l_result;
end;
end;
/