1  /**
     2   * com.sekati.math.Integer
     3   * @version 1.0.1
     4   * @author jason m horwitz | sekati.com
     5   * Copyright (C) 2007  jason m horwitz, Sekat LLC. All Rights Reserved.
     6   * Released under the MIT License: http://www.opensource.org/licenses/mit-license.php
     7   */
     8   
     9  /**
    10   * Integer Object (a positive or negative natural number including 0).
    11   */
    12  class com.sekati.math.Integer extends Number {
    13  
    14  	private var _int:Number;
    15  
    16  	/**
    17  	 * Construct a new Integer instance (number will be floored)
    18  	 * @param n (Number) to convert to an Integer
    19  	 * @throws Error on Infinity
    20  	 */
    21  	public function Integer(n:Number) {
    22  		if (n == Infinity || n == -Infinity) {
    23  			throw new Error( "Infinity cannot be evaluated to an integer" );
    24  		} else {
    25  			_int = n - n % 1;
    26  		}
    27  	}
    28  
    29  	/**
    30  	 * return the value of Integer as Number
    31  	 * @return Number
    32  	 */
    33  	public function valueOf():Number {
    34  		return _int;
    35  	}
    36  
    37  	/**
    38  	 * return string representation of Integer
    39  	 * @return String
    40  	 */
    41  	public function toString():String {
    42  		return _int.toString( );
    43  	}
    44  }