Module Syntax.DirVar

Identifier of directly represented variable

include ID
type t
val get_name : t -> string
type location =
  1. | LocI
  2. | LocQ
  3. | LocM

Location prefixes for directly represented variables. See 6.5.5.2 for explainations.

val location_to_yojson : location -> Yojson.Safe.t
type size =
  1. | SizeX
    (*

    single bit

    *)
  2. | SizeNone
    (*

    single bit

    *)
  3. | SizeB
    (*

    byte

    *)
  4. | SizeW
    (*

    word (16 bits)

    *)
  5. | SizeD
    (*

    double word (32 bits)

    *)
  6. | SizeL
    (*

    quad word (64 bits)

    *)

Size prefixes for directly represented variables.

val size_to_yojson : size -> Yojson.Safe.t
val create : TI.t -> t

Create an empty instance of the direct variable.

val get_ti : t -> TI.t
val get_loc : t -> location option
val get_size : t -> size option
val get_is_partly_located : t -> bool
val get_path : t -> int list
val set_ti : t -> TI.t -> t
val set_loc : t -> location -> t
val set_size : t -> size -> t
val set_is_partly_located : t -> bool -> t
val set_path : t -> int list -> t
val size_to_string : size -> string
val size_of_string : string -> size option
val location_to_string : location -> string
val location_of_string : string -> location option
val path_to_string : int list -> string
val to_string : t -> string
val to_yojson : t -> Yojson.Safe.t