# Class type Netxdr_mstring.mstring_factory

    class type mstring_factory = object .. end

The object creating new `mstring` objects

    method create_from_string : string -> int -> int -> bool -> mstring

`create_from_string s pos len must_copy`: Creates the `mstring` from the sub string of s starting at `pos` with length `len`

The `must_copy` flag is ignored (and exists for backwards compatibility).

    method create_from_bytes : Stdlib.Bytes.t -> int -> int -> bool -> mstring

`create_from_string s pos len must_copy`: Creates the `mstring` from the sub string of s starting at `pos` with length `len`

If `must_copy` the mstring object must create a copy. Otherwise it can just keep the string passed in.

    method create_from_memory : Netsys_mem.memory -> int -> int -> bool -> mstring

`create_from_memory m pos len must_copy`: Creates the `mstring` from the sub string of m starting at `pos` with length `len`

If `must_copy` the mstring object must create a copy. Otherwise it can just keep the memory passed in.