---
name: "Asttypes"
section: "3o"
platform: "linux"
package: "ocaml"
version: "5.5.0-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/Asttypes"
---

# Asttypes(3o)

Auxiliary AST types used by parsetree and typedtree.

## NAME

Asttypes - Auxiliary AST types used by parsetree and typedtree.

## Module

Module   Asttypes

## Documentation

Module **Asttypes**\
  :  **sig end**

Auxiliary AST types used by parsetree and typedtree.

Warning: this module is unstable and part of **Compiler\_libs** .

*type constant* =\
  \| Const\_int **of** **int**\
  \| Const\_char **of** **char**\
  \| Const\_string **of** **string \* Location.t \* string option**\
  \| Const\_float **of** **string**\
  \| Const\_int32 **of** **int32**\
  \| Const\_int64 **of** **int64**\
  \| Const\_nativeint **of** **nativeint**

*type rec\_flag* =\
  \| Nonrecursive\
  \| Recursive

*type direction\_flag* =\
  \| Upto\
  \| Downto

*type private\_flag* =\
  \| Private\
  \| Public

*type mutable\_flag* =\
  \| Immutable\
  \| Mutable

*type atomic\_flag* =\
  \| Nonatomic\
  \| Atomic

*type virtual\_flag* =\
  \| Virtual\
  \| Concrete

*type override\_flag* =\
  \| Override\
  \| Fresh

*type closed\_flag* =\
  \| Closed\
  \| Open

*type label* =  **string**

*type arg\_label* =\
  \| Nolabel\
  \| Labelled **of** **string**   \
   (\*  **label:T -\> ...**

 \*)\
  \| Optional **of** **string**   \
   (\*  **?label:T -\> ...**

 \*)

*type* **'a** *loc* =  **'a Location.loc** = {\
  txt :  **'a** ;\
  loc :  **Location.t** ;\
  }

*type variance* =\
  \| Covariant\
  \| Contravariant\
  \| NoVariance\
  \| Bivariant

*type injectivity* =\
  \| Injective\
  \| NoInjectivity

*val string\_of\_label* :  **arg\_label -\> string**
