Class BinaryExprContext

    • Constructor Detail

    • Method Detail

      • patternExprsExposedFromChildren

        public java.util.List<PatternExpr> patternExprsExposedFromChildren()
      • negatedPatternExprsExposedFromChildren

        public java.util.List<PatternExpr> negatedPatternExprsExposedFromChildren()
      • patternExprsExposedToDirectParentFromBranch

        private java.util.List<PatternExpr> patternExprsExposedToDirectParentFromBranch​(Expression branch)
      • negatedPatternExprsExposedToDirectParentFromBranch

        private java.util.List<PatternExpr> negatedPatternExprsExposedToDirectParentFromBranch​(Expression branch)
      • patternExprsExposedToChild

        public java.util.List<PatternExpr> patternExprsExposedToChild​(Node child)
        Description copied from interface: Context
        The pattern expressions that are declared in this immediate context and made visible to a given child. This list could include values which are shadowed.
      • patternExprInScope

        public java.util.Optional<PatternExpr> patternExprInScope​(java.lang.String name)
        Description copied from interface: Context
        With respect to solving, the AST "parent" of a block statement is not necessarily the same as the scope parent.
        Example:
        
          public String x() {
              if(x) {
                  // Parent node: the block attached to the method declaration
                  // Scope-parent: the block attached to the method declaration
              } else if {
                  // Parent node: the if
                  // Scope-parent: the block attached to the method declaration
              } else {
                  // Parent node: the elseif
                  // Scope-parent: the block attached to the method declaration
              }
          }
         
      • isDefinitivelyTrue

        private boolean isDefinitivelyTrue​(Expression expression)
      • isDefinitivelyFalse

        private boolean isDefinitivelyFalse​(Expression expression)