logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

This manual page is part of the POSIX Programmer's Manual. The Linux implementation of this interface

Application Usage

       Unlike the setlocale() function, the uselocale() function does not allow replacing some locale categories
       only. Applications that need to install a locale  which  differs  only  in  a  few  categories  must  use
       newlocale() to change a locale object equivalent to the currently used locale and install it.

Description

       The uselocale() function shall set or query the current locale for the calling thread.

       The value for the newloc argument shall be one of the following:

        1. A value returned by the newlocale() or duplocale() functions

        2. The special locale object descriptor LC_GLOBAL_LOCALE

        3. (locale_t)0

       If the newloc argument is (locale_t)0, the current locale shall not be changed; this value can be used to
       query the current locale setting. If the newloc argument is LC_GLOBAL_LOCALE, any thread-local locale for
       the  calling  thread  shall  be  uninstalled; the thread shall again use the global locale as the current
       locale, and changes to the global locale shall affect the thread. Otherwise, the  locale  represented  by
       newloc  shall  be  installed  as  a  thread-local locale to be used as the current locale for the calling
       thread.

       Once the uselocale() function has been called to install a thread-local locale,  the  behavior  of  every
       interface using data from the current locale shall be affected for the calling thread. The current locale
       for other threads shall remain unchanged.

Errors

       The uselocale() function may fail if:

       EINVALnewloc is not a valid locale object and is not (locale_t)0.

       Thefollowingsectionsareinformative.

Examples

       None.

Future Directions

       None.

Name

       uselocale — use locale in current thread

Prolog

       This  manual  page  is part of the POSIX Programmer's Manual.  The Linux implementation of this interface
       may differ (consult the corresponding Linux manual page for details of Linux behavior), or the  interface
       may not be implemented on Linux.

Rationale

       None.

Return Value

       Upon  successful  completion,  the uselocale() function shall return a handle for the thread-local locale
       that was  in  use  as  the  current  locale  for  the  calling  thread  on  entry  to  the  function,  or
       LC_GLOBAL_LOCALE  if  no  thread-local locale was in use. Otherwise, uselocale() shall return (locale_t)0
       and set errno to indicate the error.

See Also

duplocale(), freelocale(), newlocale(), setlocale()

       The Base Definitions volume of POSIX.1‐2017, <locale.h>

Synopsis

       #include <locale.h>

       locale_t uselocale(locale_t newloc);

See Also