Documentation
¶
Index ¶
- func NewCalculationRepeatInput(inputs []string, initial string, history CalculationHistory) calculationRepeatInput
- func NewCalculationWithMultipleInput(inputs []string) calculationWithMultipleInput
- func NewCalculationWithOneInput(operation string, inputs []string) calculationWithOneInput
- func NewCalculationWithTwoInput(input1 string, input2 string, operation string) *calculationWithTwoInput
- type CalculationHistory
- type CalculationInput
- type CalculationResult
- type ICalculationInput
- type ICalculatorRestHandler
- type ICalculatorService
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewCalculationRepeatInput ¶
func NewCalculationRepeatInput(inputs []string, initial string, history CalculationHistory) calculationRepeatInput
func NewCalculationWithMultipleInput ¶
func NewCalculationWithMultipleInput(inputs []string) calculationWithMultipleInput
Types ¶
type CalculationHistory ¶
type CalculationHistory struct {
History []CalculationResult `json:"result"`
}
type CalculationInput ¶
type CalculationInput struct {
Input string `json:"input"`
}
func (CalculationInput) ParseCalculationInput ¶
func (i CalculationInput) ParseCalculationInput(history CalculationHistory) (ICalculationInput, errors.WrappedError)
type CalculationResult ¶
type ICalculationInput ¶
type ICalculationInput interface {
GetInput() string
Validate() errors.WrappedError
Calculate() string
}
type ICalculatorRestHandler ¶
type ICalculatorService ¶
type ICalculatorService interface {
GetCalculationHistory(context.Context) CalculationHistory
Calculate(context.Context, ICalculationInput) (CalculationResult, errors.WrappedError)
}
Click to show internal directories.
Click to hide internal directories.