InstanceOverrideByTypeAndTermName

zio.blocks.schema.derive.InstanceOverrideByTypeAndTermName
case class InstanceOverrideByTypeAndTermName[TC[_], P, A](typeId: TypeId[P], termName: String, instance: Lazy[TC[A]]) extends InstanceOverride

Overrides the type class instance for a term (record field or variant case) with a specific name inside a parent record or variant identified by its TypeId. Applies at every matching (parentTypeId, termName) pair in the schema tree.

This provides medium precision between InstanceOverrideByOptic and InstanceOverrideByType. Created via DerivationBuilder.instance(typeId, termName, instance).

Attributes

Source
InstanceOverride.scala
Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Members list

Value members

Inherited methods

def productElementNames: Iterator[String]

An iterator over the names of all the elements of this product.

An iterator over the names of all the elements of this product.

Attributes

Inherited from:
Product
Source
Product.scala
def productIterator: Iterator[Any]

An iterator over all the elements of this product.

An iterator over all the elements of this product.

Attributes

Returns

in the default implementation, an Iterator[Any]

Inherited from:
Product
Source
Product.scala