Class ESN2

    • Constructor Detail

      • ESN2

        public ESN2()
    • Method Detail

      • isDefaultValueNode

        public boolean isDefaultValueNode()
      • setDefaultValueNode

        public void setDefaultValueNode​(boolean defaultValueNode)
      • getDefaultValue

        public QDLValue getDefaultValue()
      • setDefaultValue

        public void setDefaultValue​(QDLValue defaultValue)
      • computeNullity

        protected void computeNullity​(IndexList indexList)
        Actual stem contract: Evaluates the indices from right to left and does the evaluations, Nullity refers to how many of the indices "go away" on actual evaluation. When this is done, the index set is simply indices, ready for set or get in the stem:
             rank(stem) + nullity(stem) == dim(stem)
         
        for a given index. So if we have
             x.1.2 := 5; p := 1; q := 2;
         
        Computing
             w.x.p.q
               |---|  = dim is 3
                 => x.1.2 = 5
                      |-|
                        + - nullity is 2, since these 2 go away
             = w.5
                 |
                 +- rank is 1
         
        hence
             rank + nullity = dim
               1  +   2     =  3
         
        Parameters:
        indexList -
      • remove

        public boolean remove​(State state)
      • getNodeType

        public int getNodeType()
        Description copied from interface: ExpressionInterface
        QDL is not strongly typed but Java is, so each node type should have a unique integer and conditionals should use that, not the instanceof operator. This allows for efficient programming with switch statements rather than a bevy of conditionals (potentially each of which gets done even if the correct case has been handled).
        Returns: