internal void ConvertToMixed()
 {
     if (this.elements is HTupleElementsMixed)
     {
         throw new HTupleAccessException();
     }
     this.elements = (HTupleElementsImplementation)this.parent.ConvertToMixed(this.elements.getIndices());
 }
 internal HTupleElements(HTuple parent, HTupleMixed tupleImp, int[] indices)
 {
     this.parent   = parent;
     this.elements = (HTupleElementsImplementation) new HTupleElementsMixed(tupleImp, indices);
 }
 internal HTupleElements(HTuple parent, HTupleString tupleImp, int[] indices)
 {
     this.parent   = parent;
     this.elements = (HTupleElementsImplementation) new HTupleElementsString(tupleImp, indices);
 }
 internal HTupleElements(HTuple parent, HTupleDouble tupleImp, int[] indices)
 {
     this.parent   = parent;
     this.elements = (HTupleElementsImplementation) new HTupleElementsDouble(tupleImp, indices);
 }
 internal HTupleElements(HTuple parent, HTupleInt64 tupleImp, int index)
 {
     this.parent   = parent;
     this.elements = (HTupleElementsImplementation) new HTupleElementsInt64(tupleImp, index);
 }
 internal HTupleElements(HTuple parent, HTupleInt32 source, int[] indices)
 {
     this.parent   = parent;
     this.elements = (HTupleElementsImplementation) new HTupleElementsInt32(source, indices);
 }
 internal HTupleElements()
 {
     this.parent   = (HTuple)null;
     this.elements = new HTupleElementsImplementation();
 }