001    /*
002     *  This file is part of the Jikes RVM project (http://jikesrvm.org).
003     *
004     *  This file is licensed to You under the Eclipse Public License (EPL);
005     *  You may not use this file except in compliance with the License. You
006     *  may obtain a copy of the License at
007     *
008     *      http://www.opensource.org/licenses/eclipse-1.0.php
009     *
010     *  See the COPYRIGHT.txt file distributed with this work for information
011     *  regarding copyright ownership.
012     */
013    package org.vmmagic.unboxed;
014    
015    import org.vmmagic.Unboxed;
016    import org.vmmagic.pragma.RawStorage;
017    
018    /**
019     * Represents a pointer-sized unsigned integer used for describing a length in bytes.
020     * Typical uses include "length" or "size" arguments (e.g., for memcpy).
021     */
022    @Unboxed
023    @RawStorage(lengthInWords = true, length = 1)
024    public final class Extent {
025      public static Extent fromIntSignExtend(int address) {
026        return null;
027      }
028    
029      public static Extent fromIntZeroExtend(int address) {
030        return null;
031      }
032    
033      public static Extent zero() {
034        return null;
035      }
036    
037      public static Extent one() {
038        return null;
039      }
040    
041      public static Extent max() {
042        return null;
043      }
044    
045      public int toInt() {
046        return 0;
047      }
048    
049      public long toLong() {
050        return 0L;
051      }
052    
053      public Word toWord() {
054        return null;
055      }
056    
057      public Extent plus(int byteSize) {
058        return null;
059      }
060    
061      public Extent plus(Extent byteSize) {
062        return null;
063      }
064    
065      public Extent minus(int byteSize) {
066        return null;
067      }
068    
069      public Extent minus(Extent byteSize) {
070        return null;
071      }
072    
073      public boolean LT(Extent extent2) {
074        return false;
075      }
076    
077      public boolean LE(Extent extent2) {
078        return false;
079      }
080    
081      public boolean GT(Extent extent2) {
082        return false;
083      }
084    
085      public boolean GE(Extent extent2) {
086        return false;
087      }
088    
089      public boolean EQ(Extent extent2) {
090        return false;
091      }
092    
093      public boolean NE(Extent extent2) {
094        return false;
095      }
096    }
097