hyperboreean
hyperboreean

Reputation: 8333

accessing OCaml records

How can I use some OCaml record that I've defined in some other file? Say for example that I have the file a.ml in which I define the r record:

type r = {
  i: int;
  j: int;
};

and a file b.ml in which I want to use the r record. Something like this:

let s = {i = 12; j = 15;} clearly doesn't work - I know it has something to do with accessing the module in which the record is defined, but I've yet to get the syntax right.

Upvotes: 5

Views: 2139

Answers (1)

sepp2k
sepp2k

Reputation: 370162

The types and values defined in a.ml live in the module A. So you need to either open A (thereby bringing all definitions from A into scope) or refer to i and j as A.i and A.j respectively.

Upvotes: 8

Related Questions