Class/Object

sigmastate

SMethod

Related Docs: object SMethod | package sigmastate

Permalink

case class SMethod(objType: STypeCompanion, name: String, stype: SFunc, methodId: Byte, irInfo: MethodIRInfo, docInfo: Option[OperationInfo]) extends Product with Serializable

Represents method descriptor.

objType

type or type constructor descriptor

name

method name

stype

method signature type, where stype.tDom - argument type and stype.tRange - method result type.

methodId

method code, it should be unique among methods of the same objType.

irInfo

meta information connecting SMethod with ErgoTree (see MethodIRInfo)

docInfo

optional human readable method description data

Linear Supertypes
Serializable, Serializable, Product, Equals, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. SMethod
  2. Serializable
  3. Serializable
  4. Product
  5. Equals
  6. AnyRef
  7. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new SMethod(objType: STypeCompanion, name: String, stype: SFunc, methodId: Byte, irInfo: MethodIRInfo, docInfo: Option[OperationInfo])

    Permalink

    objType

    type or type constructor descriptor

    name

    method name

    stype

    method signature type, where stype.tDom - argument type and stype.tRange - method result type.

    methodId

    method code, it should be unique among methods of the same objType.

    irInfo

    meta information connecting SMethod with ErgoTree (see MethodIRInfo)

    docInfo

    optional human readable method description data

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. def argInfo(argName: String): ArgInfo

    Permalink

    Lookup ArgInfo for the given argName or throw an exception.

  5. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  6. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  7. val docInfo: Option[OperationInfo]

    Permalink

    optional human readable method description data

  8. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  9. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  10. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  11. val irInfo: MethodIRInfo

    Permalink

    meta information connecting SMethod with ErgoTree (see MethodIRInfo)

  12. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  13. val methodId: Byte

    Permalink

    method code, it should be unique among methods of the same objType.

  14. val name: String

    Permalink

    method name

  15. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  16. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  17. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  18. val objType: STypeCompanion

    Permalink

    type or type constructor descriptor

  19. def opId: OperationId

    Permalink

    Returns OperationId for AOT costing.

  20. def specializeFor(objTpe: SType, args: Seq[SType]): SMethod

    Permalink

    Specializes this instance by creating a new SMethod instance where signature is specialized with respect to the given object and args types.

    Specializes this instance by creating a new SMethod instance where signature is specialized with respect to the given object and args types. It is used in sigmastate.serialization.MethodCallSerializer parse method, so it is part of consensus protocol.

    objTpe

    specific type of method receiver (aka object)

    args

    specific types of method arguments

    returns

    new instance of method descriptor with specialized signature

  21. val stype: SFunc

    Permalink

    method signature type, where stype.tDom - argument type and stype.tRange - method result type.

  22. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  23. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  24. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  25. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  26. def withConcreteTypes(subst: Map[STypeVar, SType]): SMethod

    Permalink

    Create a new instance in which the stype field transformed using the given substitution.

  27. def withIRInfo(irBuilder: PartialFunction[(SigmaBuilder, SValue, SMethod, Seq[SValue], STypeSubst), SValue]): SMethod

    Permalink

    Create a new instance with the given IR builder (aka MethodCall rewriter) parameter.

  28. def withInfo(desc: String, args: ArgInfo*): SMethod

    Permalink

    Create a new instance with the given OperationInfo parameters.

    Create a new instance with the given OperationInfo parameters. NOTE: opDesc parameter is not defined and falls back to None.

  29. def withInfo(opDesc: ValueCompanion, desc: String, args: ArgInfo*): SMethod

    Permalink

    Create a new instance with the given OperationInfo parameters.

  30. def withSType(newSType: SFunc): SMethod

    Permalink

    Create a new instance with the given stype.

Inherited from Serializable

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from AnyRef

Inherited from Any

Ungrouped