Table of Contents

Class ItemExpressionFactory

Namespace
RandomizerCore.StringItems
Assembly
RandomizerCore.dll
public class ItemExpressionFactory : IExpressionFactory<ItemExpressionType>
Inheritance
ItemExpressionFactory
Implements
Inherited Members

Fields

EmptyEffect

Atom expression which produces a no-op item effect.

public const string EmptyEffect = "_"

Field Value

string

Methods

CreateAtomExpression(Token)

Creates an atom expression from a token

public IExpression<ItemExpressionType> CreateAtomExpression(Token token)

Parameters

token Token

Returns

IExpression<ItemExpressionType>

CreateInfixExpression(IExpression<ItemExpressionType>, OperatorToken, IExpression<ItemExpressionType>)

Creates the appropriate infix expression for the provided operator

public IExpression<ItemExpressionType> CreateInfixExpression(IExpression<ItemExpressionType> left, OperatorToken op, IExpression<ItemExpressionType> right)

Parameters

left IExpression<ItemExpressionType>
op OperatorToken
right IExpression<ItemExpressionType>

Returns

IExpression<ItemExpressionType>

CreatePostfixExpression(IExpression<ItemExpressionType>, OperatorToken)

Creates the appropriate postfix expression for the provided operator

public IExpression<ItemExpressionType> CreatePostfixExpression(IExpression<ItemExpressionType> operand, OperatorToken op)

Parameters

operand IExpression<ItemExpressionType>
op OperatorToken

Returns

IExpression<ItemExpressionType>

CreatePrefixExpression(OperatorToken, IExpression<ItemExpressionType>)

Creates the appropriate prefix expression for the provided operator

public IExpression<ItemExpressionType> CreatePrefixExpression(OperatorToken op, IExpression<ItemExpressionType> operand)

Parameters

op OperatorToken
operand IExpression<ItemExpressionType>

Returns

IExpression<ItemExpressionType>

IsAtom(Token)

Determines whether a token is a valid atomic expression

public bool IsAtom(Token token)

Parameters

token Token

Returns

bool