package tech.tablesaw.columns;

import tech.tablesaw.io.ReadOptions;

public class SkipColumnType extends AbstractColumnType {

  private static SkipColumnType INSTANCE;

  private SkipColumnType(int byteSize, String name, String printerFriendlyName) {
    super(byteSize, name, printerFriendlyName);
  }

  public static SkipColumnType instance() {
    if (INSTANCE == null) {
      INSTANCE = new SkipColumnType(0, "SKIP", "Skipped");
    }
    return INSTANCE;
  }

  @Override
  public Column<Void> create(String name) {
    throw new UnsupportedOperationException(
        "Column type " + name() + " doesn't support column creation");
  }

  @Override
  public AbstractColumnParser<?> customParser(ReadOptions options) {
    throw new UnsupportedOperationException("Column type " + name() + " doesn't support parsing");
  }

  public static Object missingValueIndicator() {
    throw new UnsupportedOperationException(
        "Column type " + SKIP + " doesn't support missing values");
  }
}

@@ -63,16 +63,190 @@
 tions;%0A%0A
+/**%0A * A special %7B@link tech.tablesaw.api.ColumnType%7D that can be used in a ColumnType%5B%5D for table%0A * imports to instruct the system to skip (i.e. don't import) a column%0A */%0A
 public c
@@ -465,32 +465,86 @@
 ndlyName);%0A  %7D%0A%0A
+  /** Returns the singleton instance of this class */%0A
   public static 
@@ -686,24 +686,47 @@
 TANCE;%0A  %7D%0A%0A
+  /** %7B@inheritDoc%7D */%0A
   @Override%0A
@@ -890,16 +890,39 @@
 );%0A  %7D%0A%0A
+  /** %7B@inheritDoc%7D */%0A
   @Overr
@@ -1098,16 +1098,114 @@
 );%0A  %7D%0A%0A
+  /** This method is not supported. It will always throw %7B@link UnsupportedOperationException%7D */%0A
   public
@@ -1242,16 +1242,53 @@
 icator()
+ throws UnsupportedOperationException
  %7B%0A    t

add javadoc for SkipColumnType