package smtml

  1. Overview
  2. Docs
Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source

Module Smtml.NumSource

Typed Values Representation. This module defines types and utilities for representing values with different numeric types, including integers and floating-point numbers. It also provides functions for type checking, comparison, formatting, and conversion.

Value Types

Sourcetype t =
  1. | F32 of int32
    (*

    32-bit floating-point value, stored as an int32.

    *)
  2. | F64 of int64
    (*

    64-bit floating-point value, stored as an int64.

    *)

The type t represents values with different numeric types.

Sourcetype printer = [
  1. | `Pretty
    (*

    Human-readable format.

    *)
  2. | `Hexadecimal
    (*

    Hexadecimal representation.

    *)
]

Representation options for value printing.

Sourceval type_of : t -> Ty.t

type_of v returns the type of the given value v.

Sourceval compare : t -> t -> int

compare v1 v2 provides a total ordering over values of type t. It returns a negative integer if v1 is less than v2, zero if they are equal, and a positive integer if v1 is greater than v2.

Sourceval equal : t -> t -> bool

equal v1 v2 returns true if v1 and v2 are equal, otherwise false.

Pretty Printing

Sourceval set_default_printer : printer -> unit

set_default_printer p sets the default printer format for displaying values.

Sourceval pp : t Fmt.t

pp is a formatter for values of type t, using the currently set printer.

Sourceval pp_no_type : t Fmt.t

pp_no_type is a formatter that prints a value of type t without displaying its type.

Serialization

Sourceval to_string : t -> string

to_string v converts the value v to a string representation.

Sourceval of_string : Ty.t -> string -> (t, [> `Msg of string ]) Smtml_prelude.result

of_string ty s attempts to parse the string s as a value of type ty. Returns Ok v on success, or an error message if parsing fails.

Sourceval to_json : t -> Yojson.Basic.t

to_json v converts the value v into a JSON representation.