net.sf.magicproject.expression
Class RegisterAccess

java.lang.Object
  extended by net.sf.magicproject.expression.Expression
      extended by net.sf.magicproject.expression.RegisterAccess
Direct Known Subclasses:
BaseRegisterIntValue

public class RegisterAccess
extends Expression

Return the register value of a component considering the modifiers.

Since:
0.82
Author:
Fabrice Daugan

Constructor Summary
RegisterAccess(java.io.InputStream inputFile)
          Creates a new instance from inputStream
Structure of InputStream : Data[size] register [Register] index [Expression]
 
Method Summary
 boolean canBePreempted()
          Return true if the associated value can be evaluated without ability context.
 void extractTriggeredEvents(java.util.List<MEventListener> res, MCard source, Test globalTest)
          Adds to the specified list, the events modifying the result of this test.
 int getPreemptionValue(Ability ability, Targetable tested)
          Return the integer value of this expression exactly as it will be when the ability will be executed.
 int getValue(Ability ability, Targetable tested, ContextEventListener context)
          Returns the integer value of this expression
 boolean isXvalue()
          Is this value is X value.
 
Methods inherited from class net.sf.magicproject.expression.Expression
getConstraintExpression, getObject, getObjectClass, getPreemptionValue, isConstant
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RegisterAccess

public RegisterAccess(java.io.InputStream inputFile)
               throws java.io.IOException
Creates a new instance from inputStream

Parameters:
inputFile - file containing this action
Throws:
java.io.IOException - if error occurred during the reading process from the specified input stream
Method Detail

isXvalue

public boolean isXvalue()
Is this value is X value.

Returns:
true if this value is X value.

getValue

public int getValue(Ability ability,
                    Targetable tested,
                    ContextEventListener context)
Description copied from class: Expression
Returns the integer value of this expression

Specified by:
getValue in class Expression
Parameters:
ability - is the ability owning this test. The card component of this ability should correspond to the card owning this test too.
tested - the tested card
context - is the context attached to this test.
Returns:
the integer value of this expression

getPreemptionValue

public int getPreemptionValue(Ability ability,
                              Targetable tested)
Return the integer value of this expression exactly as it will be when the ability will be executed.

Parameters:
ability - is the ability owning this test. The card component of this ability should correspond to the card owning this test too.
tested - the tested card
Returns:
the integer value of this expression

canBePreempted

public boolean canBePreempted()
Description copied from class: Expression
Return true if the associated value can be evaluated without ability context.

Overrides:
canBePreempted in class Expression
Returns:
true if the associated value can be evaluated without ability context.

extractTriggeredEvents

public void extractTriggeredEvents(java.util.List<MEventListener> res,
                                   MCard source,
                                   Test globalTest)
Description copied from class: Expression
Adds to the specified list, the events modifying the result of this test.

Overrides:
extractTriggeredEvents in class Expression
Parameters:
res - is the list of events to fill
source - is the card source of event
globalTest - the optional global test to include in the event test.


Copyright © 2003-2007 Magic-Project. All Rights Reserved.