2017-08-07 18:57:43 -07:00
|
|
|
package org.nwapw.abacus.tree
|
|
|
|
|
2017-08-07 19:11:13 -07:00
|
|
|
/**
|
|
|
|
* A tree node that holds a single number value.
|
|
|
|
*
|
|
|
|
* This is a tree node that holds a single NumberInterface, which represents any number,
|
|
|
|
* and is not defined during compile time.
|
|
|
|
*
|
|
|
|
* @number the number value of this node.
|
|
|
|
*/
|
2017-08-25 01:07:59 -07:00
|
|
|
class NumberNode(val number: String) : TreeNode() {
|
2017-08-07 18:57:43 -07:00
|
|
|
|
2017-09-07 12:53:12 -07:00
|
|
|
override fun <T : Any> reduce(reducer: Reducer<T>): T {
|
2017-08-07 18:57:43 -07:00
|
|
|
return reducer.reduceNode(this)
|
|
|
|
}
|
|
|
|
|
|
|
|
override fun toString(): String {
|
2017-08-18 14:26:33 -07:00
|
|
|
return number
|
2017-08-07 18:57:43 -07:00
|
|
|
}
|
|
|
|
|
|
|
|
}
|