package
0.0.0-20240702182809-236788cf9e89
Repository: https://github.com/buildbarn/go-xdr.git
Documentation: pkg.go.dev

# Functions

NewASCIIStringType creates a new ASCII string type as described in RFC 4506, section 4.11.
NewCaseSpec creates a new arm of a discriminated union.
NewConstantDefinition creates a new named constant definition, as described in RFC 4506, section 4.17.
NewConstantValue creates a value that corresponds to a constant.
NewEnumType creates an enumeration type, as described in RFC 4506, section 4.3.
NewFixedLengthArrayType creates a type that corresponds to a fixed-length array, as described in RFC 4506, section 4.12.
NewFixedLengthOpaqueType creates a fixed-length opaque data type, as described in RFC 4506, section 4.9.
NewIdentifierType creates a type that corresponds to an identifier.
NewIdentifierValue creates a value that corresponds to the name of another identifier.
NewNamedDeclaration creates a new named declaration.
NewOptionalType creates an optional-data type as described in RFC 4506, section 4.19.
NewProcedure creates a new procedure of an RPC program.
NewProgramDefinition creates a definition of an RPC program, as described in RFC 5531, chapter 12.
NewStructType creates a structure type, as described in RFC 4506, section 4.14.
NewTopLevel constructs a TopLevel based on parsed definitions.
NewTypeDefinition creates a new named type definition, as described in RFC 4506, section 4.18.
NewUnionType creates a discriminated union type, as described in RFC 4506, section 4.15.
NewUTF8StringType creates a new UTF-8 string type.
NewVariableLengthArrayType creates a type that corresponds to a variable-length array, as described in RFC 4506, section 4.13.
NewVariableLengthOpaqueType creates a variable-length opaque data type, as described in RFC 4506, section 4.10.
NewVersion creates a new version of an RPC program.

# Variables

BoolType corresponds to the boolean type as described in RFC 4506, section 4.4.
DoubleType corresponds to a double-precision floating-point type as described in RFC 4506, section 4.7.
FloatType corresponds to a single-precision floating-point type as described in RFC 4506, section 4.6.
HyperType corresponds to a 64-bit signed integer type as described in RFC 4506, section 4.5.
IntType corresponds to a 32-bit signed integer type as described in RFC 4506, section 4.1.
QuadrupleType corresponds to a quadruple-precision floating-point type as described in RFC 4506, section 4.8.
UnsignedHyperType corresponds to a 64-bit unsigned integer type as described in RFC 4506, section 4.5.
UnsignedIntType corresponds to a 32-bit unsigned integer type as described in RFC 4506, section 4.2.
VoidDeclaration is declaration of type void, as described in RFC 4506, section 4.16.

# Structs

CaseSpec corresponds to an arm of a discriminated union.
NamedDeclaration corresponds to a declaration of a type under a given name.
Procedure of an RPC program, as described in RFC 5531, chapter 12.
TopLevel contains all of the information declared in an XDR schema file.
Version of an RPC program, as described in RFC 5531, chapter 12.

# Interfaces

Declaration of a named type, or void.
Definition of a type, constant or program.
Registry can be implemented by consumers of this package to extract constants, types and imports from a TopLevel.
Resolver needs to be provided to TopLevel.Emit() to resolve constants and types.
Type that is used as part of a type or program definition.
Value that is either a constant or an identifier.