Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * Licensed under the Apache License, Version 2.0 (the "License");
   * you may not use this file except in compliance with the License.
   * You may obtain a copy of the License at
   *
   *     http://www.apache.org/licenses/LICENSE-2.0
   *
   * Unless required by applicable law or agreed to in writing, software
   * distributed under the License is distributed on an "AS IS" BASIS,
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
 package com.facebook.presto.testing;
 
 
 import static com.google.common.base.MoreObjects.toStringHelper;
 import static com.google.common.base.Preconditions.checkArgument;
 import static com.google.common.base.Preconditions.checkNotNull;
 import static com.google.common.base.Preconditions.checkPositionIndexes;
 
 public class RunLengthEncodedBlock
         implements Block
 {
     private final Block value;
     private final int positionCount;
 
     public RunLengthEncodedBlock(Block valueint positionCount)
     {
         this. = checkNotNull(value"value is null");
         checkArgument(value.getPositionCount() == 1, "Expected value to contain a single position but has %s positions"value.getPositionCount());
 
         // value can not be a RunLengthEncodedBlock because this could cause stack overflow in some of the methods
         checkArgument(!(value instanceof RunLengthEncodedBlock), "Value can not be an instance of a %s"getClass().getName());
 
         checkArgument(positionCount >= 0, "positionCount is negative");
         this. = checkNotNull(positionCount"positionCount is null");
     }
 
     public Block getValue()
     {
         return ;
     }
 
     @Override
     public int getPositionCount()
     {
         return ;
     }
 
     @Override
     public int getSizeInBytes()
     {
         return .getSizeInBytes();
     }
 
     @Override
     {
         return new RunLengthBlockEncoding(.getEncoding());
     }
 
     @Override
     public Block getRegion(int positionOffsetint length)
     {
         checkPositionIndexes(positionOffsetpositionOffset + length);
         return new RunLengthEncodedBlock(length);
     }
 
     @Override
     public int getLength(int position)
     {
         return .getLength(0);
     }
 
     @Override
     public byte getByte(int positionint offset)
     {
         return .getByte(0, offset);
     }
 
     @Override
     public short getShort(int positionint offset)
     {
         return .getShort(0, offset);
     }
 
     @Override
     public int getInt(int positionint offset)
     {
         return .getInt(0, offset);
     }
 
     @Override
     public long getLong(int positionint offset)
     {
        return .getLong(0, offset);
    }
    @Override
    public float getFloat(int positionint offset)
    {
        return .getFloat(0, offset);
    }
    @Override
    public double getDouble(int positionint offset)
    {
        return .getDouble(0, offset);
    }
    @Override
    public Slice getSlice(int positionint offsetint length)
    {
        return .getSlice(0, offsetlength);
    }
    @Override
    public boolean bytesEqual(int positionint offsetSlice otherSliceint otherOffsetint length)
    {
        return .bytesEqual(0, offsetotherSliceotherOffsetlength);
    }
    @Override
    public int bytesCompare(int positionint offsetint lengthSlice otherSliceint otherOffsetint otherLength)
    {
        return .bytesCompare(0, offsetlengthotherSliceotherOffsetotherLength);
    }
    @Override
    public void writeBytesTo(int positionint offsetint lengthBlockBuilder blockBuilder)
    {
        .writeBytesTo(0, offsetlengthblockBuilder);
    }
    @Override
    public boolean equals(int positionint offsetBlock otherBlockint otherPositionint otherOffsetint length)
    {
        return .equals(0, offsetotherBlockotherPositionotherOffsetlength);
    }
    @Override
    public int hash(int positionint offsetint length)
    {
        return .hash(0, offsetlength);
    }
    @Override
    public int compareTo(int leftPositionint leftOffsetint leftLengthBlock rightBlockint rightPositionint rightOffsetint rightLength)
    {
        return .compareTo(0, leftOffsetleftLengthrightBlockrightPositionrightOffsetrightLength);
    }
    @Override
    public Block getSingleValueBlock(int position)
    {
        checkReadablePosition(position);
        return ;
    }
    @Override
    public boolean isNull(int position)
    {
        checkReadablePosition(position);
        return .isNull(0);
    }
    @Override
    public String toString()
    {
        return toStringHelper(this)
                .add("value")
                .add("positionCount")
                .toString();
    }
    @Override
    public void assureLoaded()
    {
        .assureLoaded();
    }
    private void checkReadablePosition(int position)
    {
        checkArgument(position >= 0 && position < "position is not valid");
    }
New to GrepCode? Check out our FAQ X