public override void append(IVector value) { if (value is IVector) { int indexCount = rowIndices.Count; int prev = indexCount == 0 ? 0 : rowIndices[indexCount - 1]; if (((IVector)value).rows() != 0) { rowIndices.Add(prev + value.rows()); valueVec.append(value); } else { rowIndices.Add(prev + 1); IScalar scalar = BasicEntityFactory.instance().createScalarWithDefaultValue(value.getDataType()); scalar.setNull(); valueVec.append(scalar); } } else { throw new Exception("Append to arrayctor must be a vector. "); } }