/// <summary> /// Returns true if the two dimensions will equal at runtime /// </summary> public static bool WillEqualTo(this Dim dimX, Dim dimY) { if (dimX is Int shapeX && dimY is Int shapeY) { int x = shapeX.Value, y = shapeY.Value; if (x == y) { return(true); } } return((Equivalences.ContainsKey(dimX) && (Equivalences[dimX].Contains(dimY) || Equivalences[dimX].Any(dimY.WillEqualTo))) || (Equivalences.ContainsKey(dimY) && (Equivalences[dimY].Contains(dimX) || Equivalences[dimY].Any(dimX.WillEqualTo))) || (dimX == dimY) ); }
bool IsEquivalent(string word) { return(Equivalences.Contains(word)); }