code: public boolean consume(int ch){
          offset++;
          if(ch==0x0D){
              skipLF = true;
              line++;
              col = 0;
              return true;
          }else if(ch==0x0A){
              if(skipLF){
                  skipLF = false;
                  return false;
              }else{
                  line++;
                  col = 0;
                  return true;
              }
          }else{
              skipLF = false;
              col++;
              return true;
          }
      }
docs: return value tells whether the given character
  has been included in location or not
  
  for example in sequence "\r\n", the character
  '\n' is not included in location.