Data Type Flash ActionScript

package com.adobe.utils {
  
  import flash.utils.Endian;
  
  /**
   * Contains reusable methods for operations pertaining 
   * to int values.
   */
  public class IntUtil {
    
    /**
     * Rotates x left n bits
     *
     * @langversion ActionScript 3.0
     * @playerversion Flash 9.0
     * @tiptext
     */
    public static function rol ( x:int, n:int ):int {
      return ( x << n ) | ( x >>> ( 32 - n ) );
    }
    
    /**
     * Rotates x right n bits
     *
     * @langversion ActionScript 3.0
     * @playerversion Flash 9.0
     * @tiptext
     */
    public static function ror ( x:int, n:int ):uint {
      var nn:int = 32 - n;
      return ( x << nn ) | ( x >>> ( 32 - nn ) );
    }
    
    /** String for quick lookup of a hex character based on index */
    private static var hexChars:String = "0123456789abcdef";
    
    /**
     * Outputs the hex value of a int, allowing the developer to specify
     * the endinaness in the process.  Hex output is lowercase.
     *
     * @param n The int value to output as hex
     * @param bigEndian Flag to output the int as big or little endian
     * @return A string of length 8 corresponding to the 
     *    hex representation of n ( minus the leading "0x" )
     * @langversion ActionScript 3.0
     * @playerversion Flash 9.0
     * @tiptext
     */
    public static function toHex( n:int, bigEndian:Boolean = false ):String {
      var s:String = "";
      
      if ( bigEndian ) {
        for ( var i:int = 0; i < 4; i++ ) {
          s += hexChars.charAt( ( n >> ( ( 3 - i ) * 8 + 4 ) ) & 0xF ) 
            + hexChars.charAt( ( n >> ( ( 3 - i ) * 8 ) ) & 0xF );
        }
      } else {
        for ( var x:int = 0; x < 4; x++ ) {
          s += hexChars.charAt( ( n >> ( x * 8 + 4 ) ) & 0xF )
            + hexChars.charAt( ( n >> ( x * 8 ) ) & 0xF );
        }
      }
      
      return s;
    }
  }
    
}