abstract class Coster[T] extends AnyRef
For each Sigma type there should be one Coster class (derived from this). Each coster object implements a set of costing rules, one rule for each method of the corresponding Sigma type. For example, BoxCoster is coster for Box type, it contains rules for all methods registered in SBox type descriptor. This class defines generic costing helpers, to unify and simplify costing rules of individual methods.
Linear Supertypes
Known Subclasses
Ordering
- Alphabetic
- By Inheritance
Inherited
- Coster
- AnyRef
- Any
- Hide All
- Show All
Visibility
- Public
- All
Instance Constructors
- new Coster(obj: IRContext.RCosted[T], method: SMethod, costedArgs: Seq[IRContext.RCosted[_]], args: Seq[IRContext.Sym])
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
- def bigIntPropertyAccess(prop: (IRContext.Ref[T]) ⇒ IRContext.Ref[IRContext.BigInt]): IRContext.RCosted[IRContext.BigInt]
- def boxPropertyAccess(prop: (IRContext.Ref[T]) ⇒ IRContext.Ref[IRContext.Box], propSize: (IRContext.RSize[T]) ⇒ IRContext.RSize[IRContext.Box]): IRContext.RCosted[IRContext.Box]
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
- def constantSizePropertyAccess[R](prop: (IRContext.Ref[T]) ⇒ IRContext.Ref[R]): IRContext.RCosted[R]
- def costOfArgs: Seq[IRContext.Ref[Int]]
- def defaultCollPropertyAccess[R](prop: (IRContext.Ref[T]) ⇒ IRContext.RColl[R], propSize: (IRContext.RSize[T]) ⇒ IRContext.RSize[IRContext.Coll[R]], itemCost: IRContext.Ref[Int])(implicit arg0: IRContext.Elem[R]): IRContext.RCostedColl[R]
- def defaultOptionPropertyAccess[R](prop: (IRContext.Ref[T]) ⇒ IRContext.ROption[R], propSize: (IRContext.RSize[T]) ⇒ IRContext.RSize[IRContext.WOption[R]], itemCost: IRContext.Ref[Int])(implicit arg0: IRContext.Elem[R]): IRContext.RCostedOption[R]
- def defaultPropertyAccess[R](prop: (IRContext.Ref[T]) ⇒ IRContext.Ref[R], propSize: (IRContext.RSize[T]) ⇒ IRContext.RSize[R]): IRContext.RCosted[R]
- def digest32PropertyAccess(prop: (IRContext.Ref[T]) ⇒ IRContext.Ref[IRContext.Coll[Byte]]): IRContext.Ref[IRContext.CostedColl[Byte]]
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def groupElementPropertyAccess(prop: (IRContext.Ref[T]) ⇒ IRContext.Ref[IRContext.GroupElement]): IRContext.RCosted[IRContext.GroupElement]
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def knownLengthCollPropertyAccess[R](prop: (IRContext.Ref[T]) ⇒ IRContext.Ref[IRContext.Coll[R]], info: IRContext.KnownCollInfo[R]): IRContext.Ref[IRContext.CostedColl[R]]
- def knownSizePropertyAccess[R](prop: (IRContext.Ref[T]) ⇒ IRContext.Ref[R], size: IRContext.RSize[R]): IRContext.RCosted[R]
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- def sizeOfArgs: IRContext.Ref[Long]
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()