CentOS 7.0 - man page for tcl_registerconfig (centos section 3)

Linux & Unix Commands - Search Man Pages

Man Page or Keyword Search:   man
Select Man Page Set:       apropos Keyword Search (sections above)


Tcl_RegisterConfig(3)		      Tcl Library Procedures		    Tcl_RegisterConfig(3)

_________________________________________________________________________________________________

NAME
       Tcl_RegisterConfig - procedures to register embedded configuration information

SYNOPSIS
       #include <tcl.h>

       void
       Tcl_RegisterConfig(interp, pkgName, configuration, valEncoding)

ARGUMENTS
       Tcl_Interp *interp (in)		       Refers  to the interpreter the embedded configura-
					       tion information is registered for.  Must  not  be
					       NULL.

       const char *pkgName (in) 	       Contains  the  name of the package registering the
					       embedded configuration as ASCII string. This means
					       that this information is in UTF-8 too. Must not be
					       NULL.

       Tcl_Config *configuration (in)	       Refers to an array of Tcl_Config entries  contain-
					       ing   the   information	embedded  in  the  binary
					       library. Must not be NULL. The end of the array is
					       signaled  by  either a key identical to NULL, or a
					       key referring to the empty string.

       const char *valEncoding (in)	       Contains the name of the encoding  used	to  store
					       the  configuration  values  as  ASCII string. This
					       means that this information is in UTF-8 too.  Must
					       not be NULL.
_________________________________________________________________

DESCRIPTION
       The  function  described  here has its base in TIP 59 and provides extensions with support
       for the embedding of configuration information into their binary library and  the  genera-
       tion of a Tcl-level interface for querying this information.

       To  embed configuration information into their binary library an extension has to define a
       non-volatile array of Tcl_Config entries in one if its source files and then call Tcl_Reg-
       isterConfig to register that information.

       Tcl_RegisterConfig takes four arguments; first, a reference to the interpreter we are reg-
       istering the information with, second, the name of the package registering its  configura-
       tion  information, third, a pointer to an array of structures, and fourth a string declar-
       ing the encoding used by the configuration values.

       The string valEncoding contains the name of an encoding known to Tcl.  All these names are
       use  only  characters  in  the  ASCII subset of UTF-8 and are thus implicitly in the UTF-8
       encoding. It is expected that keys are legible English text and therefore using the  ASCII
       subset  of UTF-8. In other words, they are expected to be in UTF-8 too. The values associ-
       ated with the keys can be any string however. For these the contents of valEncoding define
       which encoding was used to represent the characters of the strings.

       Each  element  of the configuration array refers to two strings containing the key and the
       value associated with that key. The end of the array is signaled by either an empty key or
       a key identical to NULL. The function makes no copy of the configuration array. This means
       that the caller has to make sure that the memory holding this  array  is  never	released.
       This  is  the meaning behind the word non-volatile used earlier. The easiest way to accom-
       plish this is to define a  global  static  array  of  Tcl_Config  entries.  See	the  file
       "generic/tclPkgConfig.c" in the sources of the Tcl core for an example.

       When called Tcl_RegisterConfig will

       (1)    create a namespace having the provided pkgName, if not yet existing.

       (2)    create the command pkgconfig in that namespace and link it to the provided informa-
	      tion so that the keys from _configuration_  and  their  associated  values  can  be
	      retrieved through calls to pkgconfig.

       The command pkgconfig will provide two subcommands, list and get:

	      ::pkgName::pkgconfig list
		     Returns a list containing the names of all defined keys.

	      ::pkgName::pkgconfig get key
		     Returns the configuration value associated with the specified key.

TCL_CONFIG
       The Tcl_Config structure contains the following fields:

	      typedef struct Tcl_Config {
		  const char* key;
		  const char* value;
	      } Tcl_Config;

KEYWORDS
       embedding, configuration, binary library

Tcl					       8.4			    Tcl_RegisterConfig(3)
Unix & Linux Commands & Man Pages : ©2000 - 2018 Unix and Linux Forums


All times are GMT -4. The time now is 11:00 PM.

Unix & Linux Forums Content Copyright©1993-2018. All Rights Reserved.
×
UNIX.COM Login
Username:
Password:  
Show Password





Not a Forum Member?
Forgot Password?