hasmaterial.java

来自「本书透彻讲解了经典的《设计模式:可复用面向对象软件的基础》一书涵盖的23种基本设」· Java 代码 · 共 47 行

JAVA
47
字号
package com.oozinoz.robot.interpreter;

import com.oozinoz.machine.*;

/*
 * Copyright (c) 2001 Steven J. Metsker.
 * 
 * Steve Metsker makes no representations or warranties about
 * the fitness of this software for any particular purpose, 
 * including the implied warranty of merchantability.
 *
 * Please use this software as you wish with the sole
 * restriction that you may not claim that you wrote it.
 */
/**
 * Represent the condition that a machine, referred to through
 * a term, is not empty.
 * 
 * @author Steven J. Metsker
 */
public class HasMaterial extends Term 
{
	protected Term term;
/**
 * Construct a term that represent a boolean function
 * regarding whether the term refers to a machine that
 * has material.
 */
public HasMaterial(Term term)
{
	this.term = term;
}
/**
 * Return null if this term's subterm evaluates to
 * a machine that has no material.
 *
 * @return null if this term's subterm evaluates to
 *         a machine that has no material. Otherwise
 *         return the machine.
 *
 */
public Machine eval(Context c)
{
	Machine m = term.eval(c);
	return m.hasMaterial() ? m : null;
}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?