SafeNBTView

trait SafeNBTView[Repr, NBT <: NBTTag] extends NBTView[Repr, NBT] with SafeNBTDeserializer[Repr, NBT]

A safer type of NBTView where NBTView.from can't fail.

Type Params
NBT

The corresponding nbt type

Repr

The type it represents

Companion
object
trait SafeNBTDeserializer[Repr, NBT]
trait NBTView[Repr, NBT]
trait NBTDeserializer[Repr, NBT]
trait NBTSerializer[Repr, NBT]
class Object
trait Matchable
class Any
trait NBTType[Repr, NBT]
class NBTListType[ElementRepr, ElementNBT]
object TAG_Byte
object TAG_Double
object TAG_End
object TAG_Float
object TAG_Int
object TAG_Long
object TAG_Short
object TAG_String
trait SafeNBTViewCaseLike[Repr, NBT]
object NBTBoolean
SafeNBTView[Repr, NBT]

Value members

Concrete methods

override
def imap[NewRepr](f: Repr => NewRepr, g: NewRepr => Repr): SafeNBTView[NewRepr, NBT]
Definition Classes
override
def imapNbt[NewNBT <: NBTTag](f: NBT => NewNBT, g: NewNBT => NBT): SafeNBTView[Repr, NewNBT]
Definition Classes
def safeModify[NewRepr, NewNBT <: NBTTag](nbt: NBT)(f: Repr => NewRepr)(implicit newView: NBTView[NewRepr, NewNBT]): NewNBT

Same as NBTView.modify except it uses SafeNBTDeserializer.fromSafe so the result isn't an option.

Same as NBTView.modify except it uses SafeNBTDeserializer.fromSafe so the result isn't an option.

Inherited methods

def contramap[NewRepr](f: NewRepr => Repr): NBTSerializer[NewRepr, NBT]

Create a new serializer that uses this serializer as a stepping stone.

Create a new serializer that uses this serializer as a stepping stone.

Inherited from
NBTSerializer
override
def contramapNbt[NewNBT <: NBTTag](f: NewNBT => NBT): SafeNBTDeserializer[Repr, NewNBT]
Definition Classes
Inherited from
SafeNBTDeserializer
override
def from(arg: NBT): Option[Repr]
Definition Classes
Inherited from
SafeNBTDeserializer
def fromSafe(arg: NBT): Repr

A safer version of NBTDeserializer.from that can't fail.

A safer version of NBTDeserializer.from that can't fail.

Inherited from
SafeNBTDeserializer
def imapOpt[NewRepr](f: Repr => Option[NewRepr], g: NewRepr => Repr): NBTView[NewRepr, NBT]
Inherited from
NBTView
override
def map[NewRepr](f: Repr => NewRepr): SafeNBTDeserializer[NewRepr, NBT]
Definition Classes
Inherited from
SafeNBTDeserializer
def mapNbt[NewNBT <: NBTTag](f: NBT => NewNBT): NBTSerializer[Repr, NewNBT]

Maps the NBT that resulted from using this serializer.

Maps the NBT that resulted from using this serializer.

Inherited from
NBTSerializer
def modify[NewRepr, NewNBT <: NBTTag](nbt: NBT)(f: Repr => NewRepr)(implicit newView: NBTView[NewRepr, NewNBT]): Option[NewNBT]

Modifies a nbt in value form before returning a new NBT. Thew two types of NBT does not have to be the same.

Modifies a nbt in value form before returning a new NBT. Thew two types of NBT does not have to be the same.

Type Params
NewNBT

The new NBT type

NewRepr

The new value type

Value Params
f

The function to apply to the NBT

nbt

The NBT to modify

newView

A view providing a way to get back to the world of NBTs after the modification.

Example
 val stringNbt: Option[NBTString] =
 NBTView.TagInt.modify(NBTInt(5))(_.toString) 
Inherited from
NBTView
def optMap[NewRepr](f: Repr => Option[NewRepr]): NBTDeserializer[NewRepr, NBT]

Map the result of running this deserializer using a function that can fail.

Map the result of running this deserializer using a function that can fail.

Inherited from
NBTDeserializer
def to(v: Repr): NBT

Convert a value to NBT.

Convert a value to NBT.

Inherited from
NBTSerializer