casacore
ExprLogicNode.h
Go to the documentation of this file.
1 //# ExprLogicNode.h: Nodes representing scalar logical operators in table select expression tree
2 //# Copyright (C) 1994,1995,1996,1997,1999,2000
3 //# Associated Universities, Inc. Washington DC, USA.
4 //#
5 //# This library is free software; you can redistribute it and/or modify it
6 //# under the terms of the GNU Library General Public License as published by
7 //# the Free Software Foundation; either version 2 of the License, or (at your
8 //# option) any later version.
9 //#
10 //# This library is distributed in the hope that it will be useful, but WITHOUT
11 //# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
12 //# FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public
13 //# License for more details.
14 //#
15 //# You should have received a copy of the GNU Library General Public License
16 //# along with this library; if not, write to the Free Software Foundation,
17 //# Inc., 675 Massachusetts Ave, Cambridge, MA 02139, USA.
18 //#
19 //# Correspondence concerning AIPS++ should be addressed as follows:
20 //# Internet email: aips2-request@nrao.edu.
21 //# Postal address: AIPS++ Project Office
22 //# National Radio Astronomy Observatory
23 //# 520 Edgemont Road
24 //# Charlottesville, VA 22903-2475 USA
25 //#
26 //# $Id$
27 
28 #ifndef TABLES_EXPRLOGICNODE_H
29 #define TABLES_EXPRLOGICNODE_H
30 
31 //# Includes
32 #include <casacore/casa/aips.h>
33 #include <casacore/tables/TaQL/ExprNodeRep.h>
34 #include <set>
35 
36 
37 namespace casacore { //# NAMESPACE CASACORE - BEGIN
38 
39 //# This file defines classes derived from TableExprNode representing
40 //# the data type and operator in a table expression.
41 //#
42 //# Data types Bool, Int64, Double, DComplex and String are used.
43 //# Char, uChar, Short, uShort, Int, and uInt are converted to Int64,
44 //# Float to Double, and Complex to DComplex.
45 //# Binary operators ==, >=, >, <, <=, !=, and IN are recognized.
46 //# Also &&, ||, and unary ! are recognized.
47 
48 
49 
50 // <summary>
51 // Bool comparison == in table select expression tree
52 // </summary>
53 
54 // <use visibility=local>
55 
56 // <reviewed reviewer="UNKNOWN" date="before2004/08/25" tests="">
57 // </reviewed>
58 
59 // <prerequisite>
60 //# Classes you should understand before using this one.
61 // <li> TableExprNode
62 // </prerequisite>
63 
64 // <synopsis>
65 // This class represents an == comparison in a table select expression tree.
66 // This is defined for all data types.
67 // Only the Bool get function is defined, because the result of a
68 // compare is always a Bool.
69 // </synopsis>
70 
72 {
73 public:
76  Bool getBool (const TableExprId& id);
77 };
78 
79 
80 // <summary>
81 // Int comparison == in table select expression tree
82 // </summary>
83 
84 // <use visibility=local>
85 
86 // <reviewed reviewer="UNKNOWN" date="before2004/08/25" tests="">
87 // </reviewed>
88 
89 // <prerequisite>
90 //# Classes you should understand before using this one.
91 // <li> TableExprNode
92 // </prerequisite>
93 
94 // <synopsis>
95 // This class represents an == comparison in a table select expression tree.
96 // This is defined for all data types.
97 // Only the Bool get function is defined, because the result of a
98 // compare is always a Bool.
99 // </synopsis>
100 
102 {
103 public:
106  Bool getBool (const TableExprId& id);
107 };
108 
109 
110 // <summary>
111 // Double comparison == in table select expression tree
112 // </summary>
113 
114 // <use visibility=local>
115 
116 // <reviewed reviewer="UNKNOWN" date="before2004/08/25" tests="">
117 // </reviewed>
118 
119 // <prerequisite>
120 //# Classes you should understand before using this one.
121 // <li> TableExprNode
122 // </prerequisite>
123 
124 // <synopsis>
125 // This class represents an == comparison in a table select expression tree.
126 // This is defined for all data types.
127 // Only the Bool get function is defined, because the result of a
128 // compare is always a Bool.
129 // </synopsis>
130 
132 {
133 public:
136  Bool getBool (const TableExprId& id);
138 };
139 
140 
141 // <summary>
142 // DComplex comparison == in table select expression tree
143 // </summary>
144 
145 // <use visibility=local>
146 
147 // <reviewed reviewer="UNKNOWN" date="before2004/08/25" tests="">
148 // </reviewed>
149 
150 // <prerequisite>
151 //# Classes you should understand before using this one.
152 // <li> TableExprNode
153 // </prerequisite>
154 
155 // <synopsis>
156 // This class represents an == comparison in a table select expression tree.
157 // This is defined for all data types.
158 // Only the Bool get function is defined, because the result of a
159 // compare is always a Bool.
160 // </synopsis>
161 
163 {
164 public:
167  Bool getBool (const TableExprId& id);
168 };
169 
170 
171 // <summary>
172 // String comparison == in table select expression tree
173 // </summary>
174 
175 // <use visibility=local>
176 
177 // <reviewed reviewer="UNKNOWN" date="before2004/08/25" tests="">
178 // </reviewed>
179 
180 // <prerequisite>
181 //# Classes you should understand before using this one.
182 // <li> TableExprNode
183 // </prerequisite>
184 
185 // <synopsis>
186 // This class represents an == comparison in a table select expression tree.
187 // This is defined for all data types.
188 // Only the Bool get function is defined, because the result of a
189 // compare is always a Bool.
190 // </synopsis>
191 
193 {
194 public:
197  Bool getBool (const TableExprId& id);
198 };
199 
200 
201 // <summary>
202 // Regex comparison == in table select expression tree
203 // </summary>
204 
205 // <use visibility=local>
206 
207 // <reviewed reviewer="UNKNOWN" date="before2004/08/25" tests="">
208 // </reviewed>
209 
210 // <prerequisite>
211 //# Classes you should understand before using this one.
212 // <li> TableExprNode
213 // </prerequisite>
214 
215 // <synopsis>
216 // This class represents an == comparison in a table select expression tree.
217 // This is defined for all data types.
218 // Only the Bool get function is defined, because the result of a
219 // compare is always a Bool.
220 // </synopsis>
221 
223 {
224 public:
227  Bool getBool (const TableExprId& id);
228 };
229 
230 
231 // <summary>
232 // Date comparison == in table select expression tree
233 // </summary>
234 
235 // <use visibility=local>
236 
237 // <reviewed reviewer="UNKNOWN" date="before2004/08/25" tests="">
238 // </reviewed>
239 
240 // <prerequisite>
241 //# Classes you should understand before using this one.
242 // <li> TableExprNode
243 // </prerequisite>
244 
245 // <synopsis>
246 // This class represents an == comparison in a table select expression tree.
247 // This is defined for all data types.
248 // Only the Bool get function is defined, because the result of a
249 // compare is always a Bool.
250 // </synopsis>
251 
253 {
254 public:
257  Bool getBool (const TableExprId& id);
258 };
259 
260 
261 
262 // <summary>
263 // Bool comparison != in table select expression tree
264 // </summary>
265 
266 // <use visibility=local>
267 
268 // <reviewed reviewer="UNKNOWN" date="before2004/08/25" tests="">
269 // </reviewed>
270 
271 // <prerequisite>
272 //# Classes you should understand before using this one.
273 // <li> TableExprNode
274 // </prerequisite>
275 
276 // <synopsis>
277 // This class represents an != comparison in a table select expression tree.
278 // This is defined for all data types.
279 // Only the Bool get function is defined, because the result of a
280 // compare is always a Bool.
281 // </synopsis>
282 
284 {
285 public:
288  Bool getBool (const TableExprId& id);
289 };
290 
291 
292 // <summary>
293 // Int comparison != in table select expression tree
294 // </summary>
295 
296 // <use visibility=local>
297 
298 // <reviewed reviewer="UNKNOWN" date="before2004/08/25" tests="">
299 // </reviewed>
300 
301 // <prerequisite>
302 //# Classes you should understand before using this one.
303 // <li> TableExprNode
304 // </prerequisite>
305 
306 // <synopsis>
307 // This class represents an != comparison in a table select expression tree.
308 // This is defined for all data types.
309 // Only the Bool get function is defined, because the result of a
310 // compare is always a Bool.
311 // </synopsis>
312 
314 {
315 public:
318  Bool getBool (const TableExprId& id);
319 };
320 
321 
322 // <summary>
323 // Double comparison != in table select expression tree
324 // </summary>
325 
326 // <use visibility=local>
327 
328 // <reviewed reviewer="UNKNOWN" date="before2004/08/25" tests="">
329 // </reviewed>
330 
331 // <prerequisite>
332 //# Classes you should understand before using this one.
333 // <li> TableExprNode
334 // </prerequisite>
335 
336 // <synopsis>
337 // This class represents an != comparison in a table select expression tree.
338 // This is defined for all data types.
339 // Only the Bool get function is defined, because the result of a
340 // compare is always a Bool.
341 // </synopsis>
342 
344 {
345 public:
348  Bool getBool (const TableExprId& id);
349 };
350 
351 
352 // <summary>
353 // DComplex comparison != in table select expression tree
354 // </summary>
355 
356 // <use visibility=local>
357 
358 // <reviewed reviewer="UNKNOWN" date="before2004/08/25" tests="">
359 // </reviewed>
360 
361 // <prerequisite>
362 //# Classes you should understand before using this one.
363 // <li> TableExprNode
364 // </prerequisite>
365 
366 // <synopsis>
367 // This class represents an != comparison in a table select expression tree.
368 // This is defined for all data types.
369 // Only the Bool get function is defined, because the result of a
370 // compare is always a Bool.
371 // </synopsis>
372 
374 {
375 public:
378  Bool getBool (const TableExprId& id);
379 };
380 
381 
382 // <summary>
383 // String comparison != in table select expression tree
384 // </summary>
385 
386 // <use visibility=local>
387 
388 // <reviewed reviewer="UNKNOWN" date="before2004/08/25" tests="">
389 // </reviewed>
390 
391 // <prerequisite>
392 //# Classes you should understand before using this one.
393 // <li> TableExprNode
394 // </prerequisite>
395 
396 // <synopsis>
397 // This class represents an != comparison in a table select expression tree.
398 // This is defined for all data types.
399 // Only the Bool get function is defined, because the result of a
400 // compare is always a Bool.
401 // </synopsis>
402 
404 {
405 public:
408  Bool getBool (const TableExprId& id);
409 };
410 
411 
412 // <summary>
413 // Regex comparison != in table select expression tree
414 // </summary>
415 
416 // <use visibility=local>
417 
418 // <reviewed reviewer="UNKNOWN" date="before2004/08/25" tests="">
419 // </reviewed>
420 
421 // <prerequisite>
422 //# Classes you should understand before using this one.
423 // <li> TableExprNode
424 // </prerequisite>
425 
426 // <synopsis>
427 // This class represents an != comparison in a table select expression tree.
428 // This is defined for all data types.
429 // Only the Bool get function is defined, because the result of a
430 // compare is always a Bool.
431 // </synopsis>
432 
434 {
435 public:
438  Bool getBool (const TableExprId& id);
439 };
440 
441 
442 // <summary>
443 // Date comparison != in table select expression tree
444 // </summary>
445 
446 // <use visibility=local>
447 
448 // <reviewed reviewer="UNKNOWN" date="before2004/08/25" tests="">
449 // </reviewed>
450 
451 // <prerequisite>
452 //# Classes you should understand before using this one.
453 // <li> TableExprNode
454 // </prerequisite>
455 
456 // <synopsis>
457 // This class represents an != comparison in a table select expression tree.
458 // This is defined for all data types.
459 // Only the Bool get function is defined, because the result of a
460 // compare is always a Bool.
461 // </synopsis>
462 
464 {
465 public:
468  Bool getBool (const TableExprId& id);
469 };
470 
471 
472 
473 // <summary>
474 // Int comparison > in table select expression tree
475 // </summary>
476 
477 // <use visibility=local>
478 
479 // <reviewed reviewer="UNKNOWN" date="before2004/08/25" tests="">
480 // </reviewed>
481 
482 // <prerequisite>
483 //# Classes you should understand before using this one.
484 // <li> TableExprNode
485 // </prerequisite>
486 
487 // <synopsis>
488 // This class represents an > comparison in a table select expression tree.
489 // This is defined for all data types.
490 // Only the Bool get function is defined, because the result of a
491 // compare is always a Bool.
492 // </synopsis>
493 
495 {
496 public:
499  Bool getBool (const TableExprId& id);
500 };
501 
502 
503 // <summary>
504 // Double comparison > in table select expression tree
505 // </summary>
506 
507 // <use visibility=local>
508 
509 // <reviewed reviewer="UNKNOWN" date="before2004/08/25" tests="">
510 // </reviewed>
511 
512 // <prerequisite>
513 //# Classes you should understand before using this one.
514 // <li> TableExprNode
515 // </prerequisite>
516 
517 // <synopsis>
518 // This class represents an > comparison in a table select expression tree.
519 // This is defined for all data types.
520 // Only the Bool get function is defined, because the result of a
521 // compare is always a Bool.
522 // </synopsis>
523 
525 {
526 public:
529  Bool getBool (const TableExprId& id);
531 };
532 
533 
534 // <summary>
535 // DComplex comparison > in table select expression tree
536 // </summary>
537 
538 // <use visibility=local>
539 
540 // <reviewed reviewer="UNKNOWN" date="before2004/08/25" tests="">
541 // </reviewed>
542 
543 // <prerequisite>
544 //# Classes you should understand before using this one.
545 // <li> TableExprNode
546 // </prerequisite>
547 
548 // <synopsis>
549 // This class represents an > comparison in a table select expression tree.
550 // This is defined for all data types.
551 // Only the Bool get function is defined, because the result of a
552 // compare is always a Bool.
553 // </synopsis>
554 
556 {
557 public:
560  Bool getBool (const TableExprId& id);
561 };
562 
563 
564 // <summary>
565 // String comparison > in table select expression tree
566 // </summary>
567 
568 // <use visibility=local>
569 
570 // <reviewed reviewer="UNKNOWN" date="before2004/08/25" tests="">
571 // </reviewed>
572 
573 // <prerequisite>
574 //# Classes you should understand before using this one.
575 // <li> TableExprNode
576 // </prerequisite>
577 
578 // <synopsis>
579 // This class represents an > comparison in a table select expression tree.
580 // This is defined for all data types.
581 // Only the Bool get function is defined, because the result of a
582 // compare is always a Bool.
583 // </synopsis>
584 
586 {
587 public:
590  Bool getBool (const TableExprId& id);
591 };
592 
593 
594 // <summary>
595 // Date comparison > in table select expression tree
596 // </summary>
597 
598 // <use visibility=local>
599 
600 // <reviewed reviewer="UNKNOWN" date="before2004/08/25" tests="">
601 // </reviewed>
602 
603 // <prerequisite>
604 //# Classes you should understand before using this one.
605 // <li> TableExprNode
606 // </prerequisite>
607 
608 // <synopsis>
609 // This class represents an > comparison in a table select expression tree.
610 // This is defined for all data types.
611 // Only the Bool get function is defined, because the result of a
612 // compare is always a Bool.
613 // </synopsis>
614 
616 {
617 public:
620  Bool getBool (const TableExprId& id);
621 };
622 
623 
624 
625 // <summary>
626 // Int comparison >= in table select expression tree
627 // </summary>
628 
629 // <use visibility=local>
630 
631 // <reviewed reviewer="UNKNOWN" date="before2004/08/25" tests="">
632 // </reviewed>
633 
634 // <prerequisite>
635 //# Classes you should understand before using this one.
636 // <li> TableExprNode
637 // </prerequisite>
638 
639 // <synopsis>
640 // This class represents an >= comparison in a table select expression tree.
641 // This is defined for all data types.
642 // Only the Bool get function is defined, because the result of a
643 // compare is always a Bool.
644 // </synopsis>
645 
647 {
648 public:
651  Bool getBool (const TableExprId& id);
652 };
653 
654 
655 // <summary>
656 // Double comparison >= in table select expression tree
657 // </summary>
658 
659 // <use visibility=local>
660 
661 // <reviewed reviewer="UNKNOWN" date="before2004/08/25" tests="">
662 // </reviewed>
663 
664 // <prerequisite>
665 //# Classes you should understand before using this one.
666 // <li> TableExprNode
667 // </prerequisite>
668 
669 // <synopsis>
670 // This class represents an >= comparison in a table select expression tree.
671 // This is defined for all data types.
672 // Only the Bool get function is defined, because the result of a
673 // compare is always a Bool.
674 // </synopsis>
675 
677 {
678 public:
681  Bool getBool (const TableExprId& id);
683 };
684 
685 
686 // <summary>
687 // DComplex comparison >= in table select expression tree
688 // </summary>
689 
690 // <use visibility=local>
691 
692 // <reviewed reviewer="UNKNOWN" date="before2004/08/25" tests="">
693 // </reviewed>
694 
695 // <prerequisite>
696 //# Classes you should understand before using this one.
697 // <li> TableExprNode
698 // </prerequisite>
699 
700 // <synopsis>
701 // This class represents an >= comparison in a table select expression tree.
702 // This is defined for all data types.
703 // Only the Bool get function is defined, because the result of a
704 // compare is always a Bool.
705 // </synopsis>
706 
708 {
709 public:
712  Bool getBool (const TableExprId& id);
713 };
714 
715 
716 // <summary>
717 // String comparison >= in table select expression tree
718 // </summary>
719 
720 // <use visibility=local>
721 
722 // <reviewed reviewer="UNKNOWN" date="before2004/08/25" tests="">
723 // </reviewed>
724 
725 // <prerequisite>
726 //# Classes you should understand before using this one.
727 // <li> TableExprNode
728 // </prerequisite>
729 
730 // <synopsis>
731 // This class represents an >= comparison in a table select expression tree.
732 // This is defined for all data types.
733 // Only the Bool get function is defined, because the result of a
734 // compare is always a Bool.
735 // </synopsis>
736 
738 {
739 public:
742  Bool getBool (const TableExprId& id);
743 };
744 
745 
746 // <summary>
747 // Date comparison >= in table select expression tree
748 // </summary>
749 
750 // <use visibility=local>
751 
752 // <reviewed reviewer="UNKNOWN" date="before2004/08/25" tests="">
753 // </reviewed>
754 
755 // <prerequisite>
756 //# Classes you should understand before using this one.
757 // <li> TableExprNode
758 // </prerequisite>
759 
760 // <synopsis>
761 // This class represents an >= comparison in a table select expression tree.
762 // This is defined for all data types.
763 // Only the Bool get function is defined, because the result of a
764 // compare is always a Bool.
765 // </synopsis>
766 
768 {
769 public:
772  Bool getBool (const TableExprId& id);
773 };
774 
775 
776 
777 // <summary>
778 // Int comparison IN in table select expression tree
779 // </summary>
780 
781 // <use visibility=local>
782 
783 // <reviewed reviewer="UNKNOWN" date="before2004/08/25" tests="">
784 // </reviewed>
785 
786 // <prerequisite>
787 //# Classes you should understand before using this one.
788 // <li> TableExprNode
789 // </prerequisite>
790 
791 // <synopsis>
792 // This class represents an IN comparison in a table select expression tree.
793 // This is defined for all data types.
794 // Only the Bool get function is defined, because the result of a
795 // compare is always a Bool.
796 // </synopsis>
797 
799 {
800 public:
801  // <src>doTracing</src> is not used.
804  virtual void convertConstChild();
805  virtual Bool getBool (const TableExprId& id);
806 private:
807  // If the right node is constant it is converted to a set
808  std::set<Int64> itsIndexSet;
809 };
810 
811 
812 // <summary>
813 // Double comparison IN in table select expression tree
814 // </summary>
815 
816 // <use visibility=local>
817 
818 // <reviewed reviewer="UNKNOWN" date="before2004/08/25" tests="">
819 // </reviewed>
820 
821 // <prerequisite>
822 //# Classes you should understand before using this one.
823 // <li> TableExprNode
824 // </prerequisite>
825 
826 // <synopsis>
827 // This class represents an IN comparison in a table select expression tree.
828 // This is defined for all data types.
829 // Only the Bool get function is defined, because the result of a
830 // compare is always a Bool.
831 // </synopsis>
832 
834 {
835 public:
838  Bool getBool (const TableExprId& id);
839 };
840 
841 
842 // <summary>
843 // DComplex comparison IN in table select expression tree
844 // </summary>
845 
846 // <use visibility=local>
847 
848 // <reviewed reviewer="UNKNOWN" date="before2004/08/25" tests="">
849 // </reviewed>
850 
851 // <prerequisite>
852 //# Classes you should understand before using this one.
853 // <li> TableExprNode
854 // </prerequisite>
855 
856 // <synopsis>
857 // This class represents an IN comparison in a table select expression tree.
858 // This is defined for all data types.
859 // Only the Bool get function is defined, because the result of a
860 // compare is always a Bool.
861 // </synopsis>
862 
864 {
865 public:
868  Bool getBool (const TableExprId& id);
869 };
870 
871 
872 // <summary>
873 // String comparison IN in table select expression tree
874 // </summary>
875 
876 // <use visibility=local>
877 
878 // <reviewed reviewer="UNKNOWN" date="before2004/08/25" tests="">
879 // </reviewed>
880 
881 // <prerequisite>
882 //# Classes you should understand before using this one.
883 // <li> TableExprNode
884 // </prerequisite>
885 
886 // <synopsis>
887 // This class represents an IN comparison in a table select expression tree.
888 // This is defined for all data types.
889 // Only the Bool get function is defined, because the result of a
890 // compare is always a Bool.
891 // </synopsis>
892 
894 {
895 public:
898  Bool getBool (const TableExprId& id);
899 };
900 
901 
902 // <summary>
903 // Date comparison IN in table select expression tree
904 // </summary>
905 
906 // <use visibility=local>
907 
908 // <reviewed reviewer="UNKNOWN" date="before2004/08/25" tests="">
909 // </reviewed>
910 
911 // <prerequisite>
912 //# Classes you should understand before using this one.
913 // <li> TableExprNode
914 // </prerequisite>
915 
916 // <synopsis>
917 // This class represents an IN comparison in a table select expression tree.
918 // This is defined for all data types.
919 // Only the Bool get function is defined, because the result of a
920 // compare is always a Bool.
921 // </synopsis>
922 
924 {
925 public:
928  Bool getBool (const TableExprId& id);
929 };
930 
931 
932 
933 // <summary>
934 // Logical or in table select expression tree
935 // </summary>
936 
937 // <use visibility=local>
938 
939 // <reviewed reviewer="UNKNOWN" date="before2004/08/25" tests="">
940 // </reviewed>
941 
942 // <prerequisite>
943 //# Classes you should understand before using this one.
944 // <li> TableExprNode
945 // </prerequisite>
946 
947 // <synopsis>
948 // This class represents a logical or in a table select expression tree.
949 // This is defined for Bool only.
950 // </synopsis>
951 
953 {
954 public:
957  Bool getBool (const TableExprId& id);
959 };
960 
961 
962 // <summary>
963 // Logical and in table select expression tree
964 // </summary>
965 
966 // <use visibility=local>
967 
968 // <reviewed reviewer="UNKNOWN" date="before2004/08/25" tests="">
969 // </reviewed>
970 
971 // <prerequisite>
972 //# Classes you should understand before using this one.
973 // <li> TableExprNode
974 // </prerequisite>
975 
976 // <synopsis>
977 // This class represents a logical and in a table select expression tree.
978 // This is defined for Bool only.
979 // </synopsis>
980 
982 {
983 public:
986  Bool getBool (const TableExprId& id);
988 };
989 
990 
991 // <summary>
992 // Logical not in table select expression tree
993 // </summary>
994 
995 // <use visibility=local>
996 
997 // <reviewed reviewer="UNKNOWN" date="before2004/08/25" tests="">
998 // </reviewed>
999 
1000 // <prerequisite>
1001 //# Classes you should understand before using this one.
1002 // <li> TableExprNode
1003 // </prerequisite>
1004 
1005 // <synopsis>
1006 // This class represents a logical not in a table select expression tree.
1007 // This is defined for Bool only.
1008 // </synopsis>
1009 
1011 {
1012 public:
1015  Bool getBool (const TableExprId& id);
1016 };
1017 
1018 
1019 
1020 
1021 } //# NAMESPACE CASACORE - END
1022 
1023 #endif
simple 1-D array
Definition: Block.h:200
Logical and in table select expression tree.
void ranges(Block< TableExprRange > &)
Convert the tree to a number of range vectors which at least select the same things.
Bool getBool(const TableExprId &id)
Get a scalar value for this node in the given row.
TableExprNodeAND(const TableExprNodeRep &)
Abstract base class for a node having 0, 1, or 2 child nodes.
Definition: ExprNodeRep.h:559
TableExprNodeEQBool(const TableExprNodeRep &)
Bool getBool(const TableExprId &id)
Get a scalar value for this node in the given row.
DComplex comparison == in table select expression tree.
TableExprNodeEQDComplex(const TableExprNodeRep &)
Bool getBool(const TableExprId &id)
Get a scalar value for this node in the given row.
Date comparison == in table select expression tree.
TableExprNodeEQDate(const TableExprNodeRep &)
Bool getBool(const TableExprId &id)
Get a scalar value for this node in the given row.
Double comparison == in table select expression tree.
Bool getBool(const TableExprId &id)
Get a scalar value for this node in the given row.
TableExprNodeEQDouble(const TableExprNodeRep &)
void ranges(Block< TableExprRange > &)
Convert the tree to a number of range vectors which at least select the same things.
Int comparison == in table select expression tree.
Bool getBool(const TableExprId &id)
Get a scalar value for this node in the given row.
TableExprNodeEQInt(const TableExprNodeRep &)
Regex comparison == in table select expression tree.
Bool getBool(const TableExprId &id)
Get a scalar value for this node in the given row.
TableExprNodeEQRegex(const TableExprNodeRep &)
String comparison == in table select expression tree.
Bool getBool(const TableExprId &id)
Get a scalar value for this node in the given row.
TableExprNodeEQString(const TableExprNodeRep &)
DComplex comparison >= in table select expression tree.
TableExprNodeGEDComplex(const TableExprNodeRep &)
Bool getBool(const TableExprId &id)
Get a scalar value for this node in the given row.
Date comparison >= in table select expression tree.
Bool getBool(const TableExprId &id)
Get a scalar value for this node in the given row.
TableExprNodeGEDate(const TableExprNodeRep &)
Double comparison >= in table select expression tree.
Bool getBool(const TableExprId &id)
Get a scalar value for this node in the given row.
void ranges(Block< TableExprRange > &)
Convert the tree to a number of range vectors which at least select the same things.
TableExprNodeGEDouble(const TableExprNodeRep &)
Int comparison >= in table select expression tree.
Bool getBool(const TableExprId &id)
Get a scalar value for this node in the given row.
TableExprNodeGEInt(const TableExprNodeRep &)
String comparison >= in table select expression tree.
Bool getBool(const TableExprId &id)
Get a scalar value for this node in the given row.
TableExprNodeGEString(const TableExprNodeRep &)
DComplex comparison > in table select expression tree.
Bool getBool(const TableExprId &id)
Get a scalar value for this node in the given row.
TableExprNodeGTDComplex(const TableExprNodeRep &)
Date comparison > in table select expression tree.
TableExprNodeGTDate(const TableExprNodeRep &)
Bool getBool(const TableExprId &id)
Get a scalar value for this node in the given row.
Double comparison > in table select expression tree.
TableExprNodeGTDouble(const TableExprNodeRep &)
Bool getBool(const TableExprId &id)
Get a scalar value for this node in the given row.
void ranges(Block< TableExprRange > &)
Convert the tree to a number of range vectors which at least select the same things.
Int comparison > in table select expression tree.
TableExprNodeGTInt(const TableExprNodeRep &)
Bool getBool(const TableExprId &id)
Get a scalar value for this node in the given row.
String comparison > in table select expression tree.
TableExprNodeGTString(const TableExprNodeRep &)
Bool getBool(const TableExprId &id)
Get a scalar value for this node in the given row.
DComplex comparison IN in table select expression tree.
TableExprNodeINDComplex(const TableExprNodeRep &)
Bool getBool(const TableExprId &id)
Get a scalar value for this node in the given row.
Date comparison IN in table select expression tree.
Bool getBool(const TableExprId &id)
Get a scalar value for this node in the given row.
TableExprNodeINDate(const TableExprNodeRep &)
Double comparison IN in table select expression tree.
TableExprNodeINDouble(const TableExprNodeRep &)
Bool getBool(const TableExprId &id)
Get a scalar value for this node in the given row.
Int comparison IN in table select expression tree.
virtual Bool getBool(const TableExprId &id)
Get a scalar value for this node in the given row.
TableExprNodeINInt(const TableExprNodeRep &, Bool doTracing=False)
doTracing is not used.
std::set< Int64 > itsIndexSet
If the right node is constant it is converted to a set.
virtual void convertConstChild()
If one of the children is a constant, convert its data type to that of the other operand (if appropri...
String comparison IN in table select expression tree.
TableExprNodeINString(const TableExprNodeRep &)
Bool getBool(const TableExprId &id)
Get a scalar value for this node in the given row.
Bool comparison != in table select expression tree.
TableExprNodeNEBool(const TableExprNodeRep &)
Bool getBool(const TableExprId &id)
Get a scalar value for this node in the given row.
DComplex comparison != in table select expression tree.
TableExprNodeNEDComplex(const TableExprNodeRep &)
Bool getBool(const TableExprId &id)
Get a scalar value for this node in the given row.
Date comparison != in table select expression tree.
Bool getBool(const TableExprId &id)
Get a scalar value for this node in the given row.
TableExprNodeNEDate(const TableExprNodeRep &)
Double comparison != in table select expression tree.
Bool getBool(const TableExprId &id)
Get a scalar value for this node in the given row.
TableExprNodeNEDouble(const TableExprNodeRep &)
Int comparison != in table select expression tree.
Bool getBool(const TableExprId &id)
Get a scalar value for this node in the given row.
TableExprNodeNEInt(const TableExprNodeRep &)
Regex comparison != in table select expression tree.
Bool getBool(const TableExprId &id)
Get a scalar value for this node in the given row.
TableExprNodeNERegex(const TableExprNodeRep &)
String comparison != in table select expression tree.
TableExprNodeNEString(const TableExprNodeRep &)
Bool getBool(const TableExprId &id)
Get a scalar value for this node in the given row.
Logical not in table select expression tree.
Bool getBool(const TableExprId &id)
Get a scalar value for this node in the given row.
TableExprNodeNOT(const TableExprNodeRep &)
Logical or in table select expression tree.
void ranges(Block< TableExprRange > &)
Convert the tree to a number of range vectors which at least select the same things.
TableExprNodeOR(const TableExprNodeRep &)
Bool getBool(const TableExprId &id)
Get a scalar value for this node in the given row.
Abstract base class for a node in a table column expression tree.
Definition: ExprNodeRep.h:158
this file contains all the compiler specific defines
Definition: mainpage.dox:28
const Bool False
Definition: aipstype.h:44
bool Bool
Define the standard types used by Casacore.
Definition: aipstype.h:42