All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.openpdf.renderer.function.postscript.operation.PushAsNumber Maven / Gradle / Ivy

The newest version!
package org.openpdf.renderer.function.postscript.operation;

import java.util.Stack;



final class PushAsNumber implements PostScriptOperation {

	private String token;
	
	/*************************************************************************
	 * Constructor
	 * @param numberToken
	 ************************************************************************/
	
	public PushAsNumber(String numberToken) {
		super();
		this.token = numberToken;
	}
	
	/*************************************************************************
	 * eval
	 * @see PostScriptOperation#eval(java.util.Stack)
	 ************************************************************************/
	@Override
	public void eval(Stack environment) {
		try {
			double number = Double.parseDouble(this.token);
			environment.push(number);
		} catch (NumberFormatException e) {
			throw new IllegalArgumentException("PS token is not supported "+this.token); 
		}	}

}