There are many code issues in your question, some of which are purely syntactic. The github code makes a little more sense, but the main problem you are facing is that you are not making an instance of your data anywhere.
, , , getter setter:
type userBuilderType = {
mutable name: string,
mutable age: int,
mutable phone: string,
mutable address: string
};
module BuilderPattern = {
let builder () => {
name: "",
age: 0,
phone: "",
address: ""
};
let setName builder name => builder.name = name;
let getName builder => builder.name;
};
let myBuilder = BuilderPattern.builder ();
BuilderPattern.setName myBuilder "Charles";
Js.log(BuilderPattern.getName myBuilder);
, ( ):
type userBuilderType = {
mutable name: string,
mutable age: int,
mutable phone: string,
mutable address: string
};
module BuilderPattern = {
let builder = {
name: "",
age: 0,
phone: "",
address: ""
};
let setName name => builder.name = name;
let getName () => builder.name;
};
BuilderPattern.setName "Charles";
Js.log(BuilderPattern.getName ());
, let, .