You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
if IsIdenticalObj( filter, IsObject ) or (IsBound( tree.data_type ) and IsSpecializationOfFilter( filter, tree.data_type.filter )) then
667
-
668
-
variables[var_number]:= tree;
673
+
if IsRecord( filter_or_data_type ) then
669
674
670
-
if debug then
671
-
# COVERAGE_IGNORE_BLOCK_START
672
-
Display( "matched via variable1" );
673
-
Display( true );
674
-
# COVERAGE_IGNORE_BLOCK_END
675
+
ifIsBound( tree.data_type ) and tree.data_type = filter_or_data_type then
676
+
677
+
variables[var_number]:= tree;
678
+
679
+
if debug then
680
+
# COVERAGE_IGNORE_BLOCK_START
681
+
Display( "matched via new variable with data type" );
682
+
Display( true );
683
+
# COVERAGE_IGNORE_BLOCK_END
684
+
fi;
685
+
686
+
returntrue;
687
+
688
+
else
689
+
690
+
if debug then
691
+
# COVERAGE_IGNORE_BLOCK_START
692
+
Display( "type could not be inferred or did not match" );
693
+
# COVERAGE_IGNORE_BLOCK_END
694
+
fi;
695
+
696
+
returnfalse;
697
+
675
698
fi;
676
699
677
-
returntrue;
678
700
679
-
else
701
+
elif IsFilter( filter_or_data_type ) then
680
702
681
-
if debug then
682
-
# COVERAGE_IGNORE_BLOCK_START
683
-
Display( "type could not be inferred or did not match" );
684
-
# COVERAGE_IGNORE_BLOCK_END
703
+
if IsIdenticalObj( filter_or_data_type, IsObject ) or (IsBound( tree.data_type ) and IsSpecializationOfFilter( filter_or_data_type, tree.data_type.filter )) then
704
+
705
+
variables[var_number]:= tree;
706
+
707
+
if debug then
708
+
# COVERAGE_IGNORE_BLOCK_START
709
+
Display( "matched via new variable with filter" );
710
+
Display( true );
711
+
# COVERAGE_IGNORE_BLOCK_END
712
+
fi;
713
+
714
+
returntrue;
715
+
716
+
else
717
+
718
+
if debug then
719
+
# COVERAGE_IGNORE_BLOCK_START
720
+
Display( "type could not be inferred or did not match" );
721
+
# COVERAGE_IGNORE_BLOCK_END
722
+
fi;
723
+
724
+
returnfalse;
725
+
685
726
fi;
686
727
687
-
returnfalse;
728
+
else
729
+
730
+
# COVERAGE_IGNORE_NEXT_LINE
731
+
Error( "this should never happen" );
688
732
689
733
fi;
690
734
691
735
else
692
736
693
737
if debug then
694
738
# COVERAGE_IGNORE_BLOCK_START
695
-
Display( "matched via variable2" );
739
+
Display( "matched via existing variable" );
696
740
Display( CapJitIsEqualForEnhancedSyntaxTrees( variables[var_number], tree ) );
0 commit comments