LightJason - AgentSpeak(L++)
org.lightjason.agentspeak.language.execution.expression.numerical.CMultiplicative Class Reference

multiplicative binary expression More...

+ Inheritance diagram for org.lightjason.agentspeak.language.execution.expression.numerical.CMultiplicative:
+ Collaboration diagram for org.lightjason.agentspeak.language.execution.expression.numerical.CMultiplicative:

Public Member Functions

 CMultiplicative ( @Nonnull final EOperator p_operator, @Nonnull final IExpression p_lefthandside, @Nonnull final IExpression p_righthandside)
 ctor More...
 
final IFuzzyValue< Boolean > execute (final boolean p_parallel, @Nonnull final IContext p_context, @Nonnull final List< ITerm > p_argument, @Nonnull final List< ITerm > p_return)
 defines a plan-body operation More...
 
- Public Member Functions inherited from org.lightjason.agentspeak.language.execution.expression.IBaseBinary
final boolean equals (final Object p_object)
 
final int hashCode ()
 
final IExpression leftHandSide ()
 returns the left-hand expression side More...
 
final EOperator operator ()
 return expression operator More...
 
final IExpression rightHandSide ()
 returns the right-hand expression side More...
 
final String toString ()
 
final Stream< IVariable<?> > variables ()
 returns a stream with all used variables More...
 

Package Functions

private< N extends Number, M extends Number > Number divide ( @Nonnull final N p_left, @Nonnull final M p_right)
 runs the divide of number types More...
 
private< N extends Number, M extends Number > Number modulo ( @Nonnull final N p_left, @Nonnull final M p_right)
 runs the modulo of number types More...
 
private< N extends Number, M extends Number > Number multiply ( @Nonnull final N p_left, @Nonnull final M p_right)
 runs the multiply of number types More...
 

Static Private Attributes

static final long serialVersionUID = 3046373876617720672L
 serial id More...
 

Additional Inherited Members

- Public Attributes inherited from org.lightjason.agentspeak.language.execution.expression.IExpression
IExpression EMPTY
 empty expression, is always true More...
 
- Protected Member Functions inherited from org.lightjason.agentspeak.language.execution.expression.IBaseBinary
 IBaseBinary ( @Nonnull final EOperator p_operator, @Nonnull final IExpression p_lefthandside, @Nonnull final IExpression p_righthandside)
 ctor More...
 
final boolean executearguments (final boolean p_parallel, @Nonnull final IContext p_context, @Nonnull final List< ITerm > p_argument) throws IllegalArgumentException
 execute expression arguments More...
 
- Protected Attributes inherited from org.lightjason.agentspeak.language.execution.expression.IBaseBinary
final IExpression m_lefthandside
 left-hand-side argument More...
 
final EOperator m_operator
 expression operator More...
 
final IExpression m_righthandside
 right-hand-side argument More...
 

Detailed Description

Definition at line 45 of file CMultiplicative.java.

Constructor & Destructor Documentation

◆ CMultiplicative()

org.lightjason.agentspeak.language.execution.expression.numerical.CMultiplicative.CMultiplicative ( @Nonnull final EOperator  p_operator,
@Nonnull final IExpression  p_lefthandside,
@Nonnull final IExpression  p_righthandside 
)
Parameters
p_operatoroperator
p_lefthandsideleft-hand-side argument
p_righthandsideright-hand-side

Definition at line 59 of file CMultiplicative.java.

References org.lightjason.agentspeak.language.execution.expression.EOperator.isMultiplicative(), org.lightjason.agentspeak.common.CCommon.languagestring(), and org.lightjason.agentspeak.language.execution.expression.IBaseBinary.m_operator.

+ Here is the call graph for this function:

Member Function Documentation

◆ divide()

private<N extends Number, M extends Number> Number org.lightjason.agentspeak.language.execution.expression.numerical.CMultiplicative.divide ( @Nonnull final N  p_left,
@Nonnull final M  p_right 
)
package
Parameters
p_leftleft number argument
p_rightright number argument
Returns
divide value
Template Parameters
Nany number type
Many number type

Definition at line 132 of file CMultiplicative.java.

◆ execute()

final IFuzzyValue<Boolean> org.lightjason.agentspeak.language.execution.expression.numerical.CMultiplicative.execute ( final boolean  p_parallel,
@Nonnull final IContext  p_context,
@Nonnull final List< ITerm p_argument,
@Nonnull final List< ITerm p_return 
)
Parameters
p_parallelparallel execution
p_contextcurrent execution context
p_argumentparameter of the action
p_returnreturn values
Returns
fuzzy boolean

Implements org.lightjason.agentspeak.language.execution.IExecution.

Definition at line 69 of file CMultiplicative.java.

References org.lightjason.agentspeak.language.execution.expression.IBaseBinary.executearguments(), org.lightjason.agentspeak.language.CRawTerm< T >.from(), org.lightjason.agentspeak.language.fuzzy.CFuzzyValue< T >.from(), and org.lightjason.agentspeak.language.execution.expression.IBaseBinary.m_operator.

+ Here is the call graph for this function:

◆ modulo()

private<N extends Number, M extends Number> Number org.lightjason.agentspeak.language.execution.expression.numerical.CMultiplicative.modulo ( @Nonnull final N  p_left,
@Nonnull final M  p_right 
)
package
Parameters
p_leftleft number argument
p_rightright number argument
Returns
modulo value
Template Parameters
Nany number type
Many number type

Definition at line 148 of file CMultiplicative.java.

◆ multiply()

private<N extends Number, M extends Number> Number org.lightjason.agentspeak.language.execution.expression.numerical.CMultiplicative.multiply ( @Nonnull final N  p_left,
@Nonnull final M  p_right 
)
package
Parameters
p_leftleft number argument
p_rightright number argument
Returns
multiply value
Template Parameters
Nany number type
Many number type

Definition at line 116 of file CMultiplicative.java.

Member Data Documentation

◆ serialVersionUID

final long org.lightjason.agentspeak.language.execution.expression.numerical.CMultiplicative.serialVersionUID = 3046373876617720672L
staticprivate

Definition at line 50 of file CMultiplicative.java.