scala.scalanative.nir.serialization

Members list

Type members

Classlikes

final class BinaryDeserializer(buffer: ByteBuffer, nirSource: NIRSource)

Attributes

Supertypes
class Object
trait Matchable
class Any
final class BinarySerializer(channel: WritableByteChannel)

Attributes

Supertypes
class Object
trait Matchable
class Any
class DeserializationException(global: Global, file: String, compatVersion: Int, revision: Int, cause: Throwable) extends RuntimeException

Attributes

Supertypes
class RuntimeException
class Exception
class Throwable
trait Serializable
class Object
trait Matchable
class Any
Show all
class IncompatibleVersion(version: Version, fileName: String) extends NirDeserializationException

Attributes

Supertypes
class IllegalStateException
class RuntimeException
class Exception
class Throwable
trait Serializable
class Object
trait Matchable
class Any
Show all
sealed abstract class InternedBinarySectionWriter[T] extends NIRSectionWriter

Attributes

Supertypes
class Object
trait Matchable
class Any
sealed abstract class NIRSectionWriter(initialBufferSize: Int)

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
abstract class NirDeserializationException(message: String) extends IllegalStateException

Attributes

Supertypes
class IllegalStateException
class RuntimeException
class Exception
class Throwable
trait Serializable
class Object
trait Matchable
class Any
Show all
Known subtypes
case class Prelude(magic: Int, compat: Int, revision: Int, sections: Offsets, hasEntryPoints: Boolean)

Attributes

Companion
object
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object Prelude

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
Prelude.type
object Tags

Serialization tags are unique type ids used to identify types in the binary representation of NIR. There are some holes in the numbering of the types to allow for binary-compatible leeway with adding new IR nodes.

Serialization tags are unique type ids used to identify types in the binary representation of NIR. There are some holes in the numbering of the types to allow for binary-compatible leeway with adding new IR nodes.

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
Tags.type

Attributes

Supertypes
class IllegalStateException
class RuntimeException
class Exception
class Throwable
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type

Value members

Concrete methods

def deserializeBinary(directory: VirtualDirectory, path: Path): Seq[Defn]
def serializeBinary(defns: Seq[Defn], channel: WritableByteChannel): Unit