ShakeType

interface ShakeType(source)

A ShakeType is a type of variable, field, method return type or a literal

Inheritors

Types

Link copied to clipboard
interface Array : ShakeType
Link copied to clipboard
Link copied to clipboard
interface Lambda : ShakeType
Link copied to clipboard
interface Object : ShakeType
Link copied to clipboard
interface Primitive : ShakeType
Link copied to clipboard

Properties

Link copied to clipboard
abstract val kind: ShakeType.Kind
Link copied to clipboard
abstract val name: String

The name of the type

Link copied to clipboard
abstract val qualifiedName: String

The qualified name of the type

Functions

Link copied to clipboard

Select the add-assign operator overload for the given type

Link copied to clipboard

Get a list of all overloads for the add-assign operator of this type

Link copied to clipboard

If I overload the add-assign operator, what is the return type (null if not overloaded) of the expression this += other If the add-assign operator is not overloaded, this method should return null. When returning null, ShakeAssignable.additionAssignType will know that the add-assign operator is not overloaded and will use the default add-assign operator and resolve the type itself.

Link copied to clipboard
Link copied to clipboard

Select the add operator overload for the given type

Link copied to clipboard

Get a list of all overloads for the add operator of this type

Link copied to clipboard
open fun additionType(other: ShakeType, scope: ShakeScope): ShakeType?

Returns the type of the expression this + other If the add operator is not overloaded, this method should look for a default add operator and resolve the type itself. This isi the default implementation of additionType, we don't know anything about the type here and so we just try to search for an overloaded operator.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
open fun assignOverload(other: ShakeType, scope: ShakeScope): ShakeMethod?

Select the assign operator overload for the given type

Link copied to clipboard

Get a list of all overloads for the assign operator of this type

Link copied to clipboard
open fun assignType(other: ShakeType, scope: ShakeScope): ShakeType?

If I overload the assign operator, what is the return type (null if not overloaded) of the expression this = other If the assign operator is not overloaded, this method should return null. When returning null, ShakeAssignable.assignType will know that the assign operator is not overloaded and will use the default assign operator and resolve the type itself.

Link copied to clipboard
Link copied to clipboard

Select the binary-and operator overload for the given type

Link copied to clipboard

Get a list of all overloads for the binary-and operator of this type

Link copied to clipboard
open fun binaryAndType(other: ShakeType, scope: ShakeScope): ShakeType?

Returns the type of the expression this & other If the binary-and operator is not overloaded, this method should look for a default binary-and operator and resolve the type itself. This isi the default implementation of binaryAndType, we don't know anything about the type here and so we just try to search for an overloaded operator.

Link copied to clipboard
Link copied to clipboard

Select the binary-not operator overload for the given type

Link copied to clipboard

Get a list of all overloads for the binary-not operator of this type

Link copied to clipboard
Link copied to clipboard

Select the binary-or operator overload for the given type

Link copied to clipboard

Get a list of all overloads for the binary-or operator of this type

Link copied to clipboard
open fun binaryOrType(other: ShakeType, scope: ShakeScope): ShakeType?

Returns the type of the expression this | other If the binary-or operator is not overloaded, this method should look for a default binary-or operator and resolve the type itself. This isi the default implementation of binaryOrType, we don't know anything about the type here and so we just try to search for an overloaded operator.

Link copied to clipboard

Select the binary-left-shift operator overload for the given type

Link copied to clipboard

Get a list of all overloads for the binary-left-shift operator of this type

Link copied to clipboard

Returns the type of the expression this << other If the binary-left-shift operator is not overloaded, this method should look for a default binary-left-shift operator and resolve the type itself. This isi the default implementation of binaryShiftLeftType, we don't know anything about the type here and so we just try to search for an overloaded operator.

Link copied to clipboard

Select the binary-right-shift operator overload for the given type

Link copied to clipboard

Get a list of all overloads for the binary-right-shift operator of this type

Link copied to clipboard

Returns the type of the expression this >> other If the binary-right-shift operator is not overloaded, this method should look for a default binary-right-shift operator and resolve the type itself. This isi the default implementation of binaryShiftRightType, we don't know anything about the type here and so we just try to search for an overloaded operator.

Link copied to clipboard
Link copied to clipboard

Select the binary-xor operator overload for the given type

Link copied to clipboard

Get a list of all overloads for the binary-xor operator of this type

Link copied to clipboard
open fun binaryXorType(other: ShakeType, scope: ShakeScope): ShakeType?

Returns the type of the expression this ^ other If the binary-xor operator is not overloaded, this method should look for a default binary-xor operator and resolve the type itself. This isi the default implementation of binaryXorType, we don't know anything about the type here and so we just try to search for an overloaded operator.

Link copied to clipboard
abstract fun castableTo(other: ShakeType): Boolean
Link copied to clipboard
open fun childField(name: String, scope: ShakeScope): ShakeField?

Returns the field of the expression this."name" If the field is not found, this method should return null.

Link copied to clipboard
open fun childFunctions(name: String, scope: ShakeScope): List<ShakeMethod>?

Returns the type of the expression this."name"()

Link copied to clipboard
open fun childInvokable(name: String, scope: ShakeScope): List<ShakeMethod>?

Returns the type of the expression this."name"()

Link copied to clipboard
open fun childType(name: String, scope: ShakeScope): ShakeType?

Returns the type of the expression this."name"

Link copied to clipboard
abstract fun compatibilityDistance(other: ShakeType): Int
Link copied to clipboard
abstract fun compatibleTo(other: ShakeType): Boolean
Link copied to clipboard

Select the decrement-after operator overload for the given type

Link copied to clipboard

Get a list of all overloads for the decrement-after operator of this type

Link copied to clipboard

If I overload the decrement-after operator, what is the return type (null if not overloaded) of the expression this-- If the decrement-after operator is not overloaded, this method should return null. When returning null, ShakeAssignable.decrementAfterType will know that the decrement-after operator is not overloaded and will use the default decrement-after operator and resolve the type itself.

Link copied to clipboard

Select the decrement-before operator overload for the given type

Link copied to clipboard

Get a list of all overloads for the decrement-before operator of this type

Link copied to clipboard

If I overload the decrement-before operator, what is the return type (null if not overloaded) of the expression --this If the decrement-before operator is not overloaded, this method should return null. When returning null, ShakeAssignable.decrementBeforeType will know that the decrement-before operator is not overloaded and will use the default decrement-before operator and resolve the type itself.

Link copied to clipboard

Select the div-assign operator overload for the given type

Link copied to clipboard

Get a list of all overloads for the div-assign operator of this type

Link copied to clipboard

If I overload the div-assign operator, what is the return type (null if not overloaded) of the expression this /= other If the div-assign operator is not overloaded, this method should return null. When returning null, ShakeAssignable.divisionAssignType will know that the div-assign operator is not overloaded and will use the default div-assign operator and resolve the type itself.

Link copied to clipboard
Link copied to clipboard

Select the div operator overload for the given type

Link copied to clipboard

Get a list of all overloads for the div operator of this type

Link copied to clipboard
open fun divisionType(other: ShakeType, scope: ShakeScope): ShakeType?

Returns the type of the expression this / other If the div operator is not overloaded, this method should look for a default div operator and resolve the type itself. This isi the default implementation of divisionType, we don't know anything about the type here and so we just try to search for an overloaded operator.

Link copied to clipboard
Link copied to clipboard
open fun equalsOverload(other: ShakeType, scope: ShakeScope): ShakeMethod?

Select the equals operator overload for the given type

Link copied to clipboard

Get a list of all overloads for the equals operator of this type

Link copied to clipboard
open fun equalsType(other: ShakeType, scope: ShakeScope): ShakeType?

Returns the type of the expression this == other If the equals operator is not overloaded, this method should look for a default equals operator and resolve the type itself. This isi the default implementation of equalsType, we don't know anything about the type here and so we just try to search for an overloaded operator.

Link copied to clipboard
Link copied to clipboard

Select the greater-than-or-equals operator overload for the given type

Link copied to clipboard

Get a list of all overloads for the greater-than-or-equals operator of this type

Link copied to clipboard

Returns the type of the expression this >= other If the greater-than-or-equals operator is not overloaded, this method should look for a default greater-than-or-equals operator and resolve the type itself. This isi the default implementation of greaterThanOrEqualType, we don't know anything about the type here and so we just try to search for an overloaded operator.

Link copied to clipboard

Select the greater-than operator overload for the given type

Link copied to clipboard

Get a list of all overloads for the greater-than operator of this type

Link copied to clipboard
open fun greaterThanType(other: ShakeType, scope: ShakeScope): ShakeType?

Returns the type of the expression this > other If the greater-than operator is not overloaded, this method should look for a default greater-than operator and resolve the type itself. This isi the default implementation of greaterThanType, we don't know anything about the type here and so we just try to search for an overloaded operator.

Link copied to clipboard

Select the increment-after operator overload for the given type

Link copied to clipboard

Get a list of all overloads for the increment-after operator of this type

Link copied to clipboard

If I overload the increment-after operator, what is the return type (null if not overloaded) of the expression this++ If the increment-after operator is not overloaded, this method should return null. When returning null, ShakeAssignable.incrementAfterType will know that the increment-after operator is not overloaded and will use the default increment-after operator and resolve the type itself.

Link copied to clipboard

Select the increment-before operator overload for the given type

Link copied to clipboard

Get a list of all overloads for the increment-before operator of this type

Link copied to clipboard

If I overload the increment-before operator, what is the return type (null if not overloaded) of the expression ++this If the increment-before operator is not overloaded, this method should return null. When returning null, ShakeAssignable.incrementBeforeType will know that the increment-before operator is not overloaded and will use the default increment-before operator and resolve the type itself.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Select the less-than-or-equals operator overload for the given type

Link copied to clipboard

Get a list of all overloads for the less-than-or-equals operator of this type

Link copied to clipboard

Returns the type of the expression this <= other If the less-than-or-equals operator is not overloaded, this method should look for a default less-than-or-equals operator and resolve the type itself. This isi the default implementation of lessThanOrEqualType, we don't know anything about the type here and so we just try to search for an overloaded operator.

Link copied to clipboard

Select the less-than operator overload for the given type

Link copied to clipboard

Get a list of all overloads for the less-than operator of this type

Link copied to clipboard
open fun lessThanType(other: ShakeType, scope: ShakeScope): ShakeType?

Returns the type of the expression this < other If the less-than operator is not overloaded, this method should look for a default less-than operator and resolve the type itself. This isi the default implementation of lessThanType, we don't know anything about the type here and so we just try to search for an overloaded operator.

Link copied to clipboard

Select the and operator overload for the given type

Link copied to clipboard

Get a list of all overloads for the and operator of this type

Link copied to clipboard
open fun logicalAndType(other: ShakeType, scope: ShakeScope): ShakeType?

Returns the type of the expression this && other If the and operator is not overloaded, this method should look for a default and operator and resolve the type itself. This isi the default implementation of logicalAndType, we don't know anything about the type here and so we just try to search for an overloaded operator.

Link copied to clipboard

Select the not operator overload for the given type

Link copied to clipboard

Returns the type of the expression !this If the not operator is not overloaded, this method should look for a default not operator and resolve the type itself. This isi the default implementation of logicalNotType, we don't know anything about the type here and so we just try to search for an overloaded operator.

Link copied to clipboard

Select the or operator overload for the given type

Link copied to clipboard

Get a list of all overloads for the or operator of this type

Link copied to clipboard
open fun logicalOrType(other: ShakeType, scope: ShakeScope): ShakeType?

Returns the type of the expression this || other If the or operator is not overloaded, this method should look for a default or operator and resolve the type itself. This isi the default implementation of logicalOrType, we don't know anything about the type here and so we just try to search for an overloaded operator.

Link copied to clipboard

Select the xor operator overload for the given type

Link copied to clipboard

Get a list of all overloads for the xor operator of this type

Link copied to clipboard

Select the mod-assign operator overload for the given type

Link copied to clipboard

Get a list of all overloads for the mod-assign operator of this type

Link copied to clipboard
open fun modulusAssignType(other: ShakeType, scope: ShakeScope): ShakeType?

If I overload the mod-assign operator, what is the return type (null if not overloaded) of the expression this %= other If the mod-assign operator is not overloaded, this method should return null. When returning null, ShakeAssignable.modulusAssignType will know that the mod-assign operator is not overloaded and will use the default mod-assign operator and resolve the type itself.

Link copied to clipboard
Link copied to clipboard
open fun modulusOverload(other: ShakeType, scope: ShakeScope): ShakeMethod?

Select the mod operator overload for the given type

Link copied to clipboard

Get a list of all overloads for the mod operator of this type

Link copied to clipboard
open fun modulusType(other: ShakeType, scope: ShakeScope): ShakeType?

Returns the type of the expression this % other If the mod operator is not overloaded, this method should look for a default mod operator and resolve the type itself. This isi the default implementation of modulusType, we don't know anything about the type here and so we just try to search for an overloaded operator.

Link copied to clipboard

Select the mul-assign operator overload for the given type

Link copied to clipboard

Get a list of all overloads for the mul-assign operator of this type

Link copied to clipboard

If I overload the mul-assign operator, what is the return type (null if not overloaded) of the expression this *= other If the mul-assign operator is not overloaded, this method should return null. When returning null, ShakeAssignable.multiplicationAssignType will know that the mul-assign operator is not overloaded and will use the default mul-assign operator and resolve the type itself.

Link copied to clipboard

Select the mul operator overload for the given type

Link copied to clipboard

Get a list of all overloads for the mul operator of this type

Link copied to clipboard

Returns the type of the expression this * other If the mul operator is not overloaded, this method should look for a default mul operator and resolve the type itself. This isi the default implementation of multiplicationType, we don't know anything about the type here and so we just try to search for an overloaded operator.

Link copied to clipboard
Link copied to clipboard

Select the not-equals operator overload for the given type

Link copied to clipboard

Get a list of all overloads for the not-equals operator of this type

Link copied to clipboard
open fun notEqualsType(other: ShakeType, scope: ShakeScope): ShakeType?

Returns the type of the expression this != other If the not-equals operator is not overloaded, this method should look for a default not-equals operator and resolve the type itself. This isi the default implementation of notEqualsType, we don't know anything about the type here and so we just try to search for an overloaded operator.

Link copied to clipboard
Link copied to clipboard

Get a list of all overloads for the not operator of this type

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Select the pow-assign operator overload for the given type

Link copied to clipboard

Get a list of all overloads for the pow-assign operator of this type

Link copied to clipboard
open fun powerAssignType(other: ShakeType, scope: ShakeScope): ShakeType?

If I overload the pow-assign operator, what is the return type (null if not overloaded) of the expression this **= other If the pow-assign operator is not overloaded, this method should return null. When returning null, ShakeAssignable.powerAssignType will know that the pow-assign operator is not overloaded and will use the default pow-assign operator and resolve the type itself.

Link copied to clipboard
Link copied to clipboard
open fun powerOverload(other: ShakeType, scope: ShakeScope): ShakeMethod?

Select the pow operator overload for the given type

Link copied to clipboard

Get a list of all overloads for the pow operator of this type

Link copied to clipboard
open fun powerType(other: ShakeType, scope: ShakeScope): ShakeType?

Returns the type of the expression this ** other If the pow operator is not overloaded, this method should look for a default pow operator and resolve the type itself. This isi the default implementation of powerType, we don't know anything about the type here and so we just try to search for an overloaded operator.

Link copied to clipboard

Select the sub-assign operator overload for the given type

Link copied to clipboard

Get a list of all overloads for the sub-assign operator of this type

Link copied to clipboard

If I overload the sub-assign operator, what is the return type (null if not overloaded) of the expression this -= other If the sub-assign operator is not overloaded, this method should return null. When returning null, ShakeAssignable.subtractionAssignType will know that the sub-assign operator is not overloaded and will use the default sub-assign operator and resolve the type itself.

Link copied to clipboard
Link copied to clipboard

Select the sub operator overload for the given type

Link copied to clipboard

Get a list of all overloads for the sub operator of this type

Link copied to clipboard
open fun subtractionType(other: ShakeType, scope: ShakeScope): ShakeType?

Returns the type of the expression this - other If the sub operator is not overloaded, this method should look for a default sub operator and resolve the type itself. This isi the default implementation of subtractionType, we don't know anything about the type here and so we just try to search for an overloaded operator.

Link copied to clipboard
abstract fun toJson(): Map<String, Any?>
Link copied to clipboard