m_create_layout(3LAYOUTLayout Service Library Functionm_create_layout(3LAYOUT)NAMEm_create_layout - initialize a layout object
SYNOPSIS
cc [ flag... ] file... -llayout [ library... ]
#include <sys/layout.h>
LayoutObject m_create_layout(const AttrObject attrobj, const char*
modifier);
DESCRIPTION
The m_create_layout() function creates a LayoutObject associated with
the locale identified by attrobj.
The LayoutObject is an opaque object containing all the data and meth‐
ods necessary to perform the layout operations on context-dependent or
directional characters of the locale identified by the attrobj. The
memory for the LayoutObject is allocated by m_create_layout(). The Lay‐
outObject created has default layout values. If the modifier argument
is not NULL, the layout values specified by the modifier overwrite the
default layout values associated with the locale. Internal states
maintained by the layout transformation function across transformations
are set to their initial values.
The attrobj argument is or may be an amalgam of many opaque objects. A
locale object is just one example of the type of object that can be
attached to an attribute object. The attrobj argument specifies a name
that is usually associated with a locale category. If attrobj is NULL,
the created LayoutObject is associated with the current locale as set
by the setlocale(3C) function.
The modifier argument announces a set of layout values when the Lay‐
outObject is created.
RETURN VALUES
Upon successful completion, the m_create_layout() function returns a
LayoutObject for use in subsequent calls to m_*_layout() functions.
Otherwise the m_create_layout() function returns (LayoutObject) 0 and
sets errno to indicate the error.
ERRORS
The m_create_layout() function may fail if:
EBADF The attribute object is invalid or the locale asssoci‐
ated with the attribute object is not available.
EINVAL The modifier string has a syntax error or it contains
unknown layout values.
EMFILE There are {OPEN_MAX} file descriptors currently open in
the calling process.
ENOMEM Insufficient storage space is available.
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
┌─────────────────────────────┬─────────────────────────────┐
│ ATTRIBUTE TYPE │ ATTRIBUTE VALUE │
├─────────────────────────────┼─────────────────────────────┤
│MT-Level │MT-Safe │
└─────────────────────────────┴─────────────────────────────┘
SEE ALSOsetlocale(3C), attributes(5)SunOS 5.10 8 Jun 1999 m_create_layout(3LAYOUT)