winstl Namespace Reference


Detailed Description

The winstl namespace contains all components in the WinSTL project.

By default, the winstl namespace is actually an alias for the namespace stlsoft::winstl_project, which is where all the WinSTL components actually reside. This measure allows all components within the main the STLSoft project (which are defined within the stlsoft namespace) to be visible to all components "within" the winstl namespace. (Otherwise, there would be a whole lot of onerous qualification throughout the code of all sub-projects.)

Note:
If either/both of the symbols _STLSOFT_NO_NAMESPACES and _WINSTL_NO_NAMESPACE are defined, all WinSTL components will be defined in the global namespace. Conversely, if the _STLSOFT_NO_NAMESPACE symbol (not to be confused with the _STLSOFT_NO_NAMESPACES symbol!) is defined - meaning that all main project components are to be defined in the global namespace, and _WINSTL_NO_NAMESPACE is not defined, then all WinSTL components will be defined within a bona fide winstl namespace.

This is a vestige of compatibility with compilers with no (or no sensible) namespace support that is maintained for reasons of backwards compatiblity and because it is, in rare circumstances, a useful facility.


Classes

class  clipboard_format_sequence
 This class provides an STL-like sequence for iterating the clipboard formats for the current process. More...
class  clipboard_scope_exception
 Indicates failure to access or manipulate the Windows clipboard. More...
class  clipboard_scope
 This class acquires access to the Win32 clipboard, and acts as a facade over the clipboard API. More...
class  clipboard_exception
 Root exception thrown by the Windows Clipboard Library. More...
class  applet
 Represents a Control Panel Applet. More...
class  applet_module
 Represents a Control Panel Applet module, and provides methods for loading and accessing applets. More...
class  control_panel_exception
 Exception thrown by the Windows Control Panel library. More...
class  applet_entry_not_found_exception
 Indicates that the control panel entry point cannot be found in the control panel library. More...
class  combobox_sequence
 STL-like sequence for combo-box contents. More...
struct  listview_inserter
 A function class used to insert items into list views. More...
struct  treeview_inserter
 A function class used to insert items into tree views. More...
class  dialog_button_id_check
 Functor used to (un)check buttons. More...
class  edit_line_sequence
 STL-like sequence for edit control contents. More...
class  button_check
 Functor used to (un)check buttons. More...
class  is_checked
 Predicate used to indicate the check-state of buttons. More...
class  is_class
 Predicate used to detect whether the window is of a given class. More...
struct  listbox_front_inserter
 A function class used to insert items at the front of list-box. More...
struct  listbox_add_inserter
 A function class used to add items to a list-box. More...
struct  listbox_back_inserter
 A function class used to insert items to the back of a list-box. More...
struct  combobox_front_inserter
 A function class used to insert items at the front of combo-box. More...
struct  combobox_add_inserter
 A function class used to add items to a combo-box. More...
struct  combobox_back_inserter
 A function class used to insert items to the back of a combo-box. More...
class  listbox_const_iterator
 Iterator for listbox_sequence class. More...
class  listbox_data_const_iterator
 Iterator for listbox_sequence class. More...
class  listbox_data_sequence
 STL-like sequence for list-box contents. More...
class  listbox_sequence
 STL-like sequence for list-box contents. More...
class  listview_sequence_item
 Item class used by the listview_sequence class. More...
class  listview_sequence
 Provides an STL-like sequence over the contents of a Windows List-view ("SysListView32"). More...
class  treeview_sequence_const_iterator
 Iterator for the treeview_child_sequence, treeview_peer_sequence and treeview_visible_sequence classes. More...
class  treeview_sequence_base
 Base class for the treeview_child_sequence, treeview_peer_sequence and treeview_visible_sequence classes. More...
class  treeview_child_sequence
 Presents an STL-like sequence interface to the children of a given node in a tree-view. More...
class  treeview_peer_sequence
 brief Presents an STL-like sequence interface to the peers of a given node in a tree-view More...
class  treeview_visible_sequence
 Presents an STL-like sequence interface to the visible items in a tree-view. More...
class  multibyte2wide
 Converts a multibyte (char-based) string to a wide (whar_t-based) string. More...
class  wide2multibyte
 Converts a wide (whar_t-based) string to a multibyte (char-based) string. More...
union  basic_resource_id
 Shim type for conversion between integer and c-string resource identifiers. More...
class  missing_entry_point_exception
 Indicates an entry point cannot be located in a dynamic library. More...
class  invalid_calling_convention_exception
 Indicates an invalid calling convention specifier. More...
struct  function_descriptor_base
 Anchors the function descriptor specialisations with a common base to facilitate function descriptor meta-programming selection. More...
struct  function_descriptor
 Specifies a compile-time function descriptor. More...
struct  is_valid_dl_call_arg
 Traits class that provides a mechanism for declaring specific (e.g. More...
struct  dl_call_traits
 Internal traits class used by the DL Library. More...
class  module
 Class for manipulating dynamically loaded libraries. More...
class  conversion_error
 Represents a failed conversion. More...
class  basic_error_desc
 Utility class that loads the system string representation corresponding to a given error code. More...
class  windows_exception
 General exception class for Windows operating system failures. More...
class  resource_exception
 Indicates that a resource could not be located. More...
class  access_exception
 Indicates that a access condition was encountered. More...
struct  windows_exception_policy
 A policy class that throws a windows_exception class. More...
struct  resource_exception_policy
 A policy class that throws a resource_exception class. More...
class  last_error_scope
 A scoping class that scopes the thread's last error. More...
struct  abspath_policy
 Special String Instance policy template for eliciting the absolute form of a given path. More...
class  basic_absolute_path
 Converts a relative path to an absolute path. More...
struct  cwd_policy
 Special String Instance policy template for eliciting the current directory. More...
class  basic_current_directory_scope
 Current directory scoping class. More...
class  basic_file_path_buffer
 Acts as a buffer with sufficient size for any drive on the host machine. More...
struct  filesystem_traits
 Traits for accessing the correct file-system functions for a given character type. More...
class  basic_findfile_sequence
 Presents an STL-like sequence interface over the items on the file-system. More...
class  basic_findfile_sequence_value_type
 Value type for the basic_findfile_sequence. More...
class  basic_findfile_sequence_const_input_iterator
 Iterator type for the basic_findfile_sequence supporting the Input Iterator concept. More...
class  basic_findvolume_sequence
 Presents an STL-like sequence interface over the volumes on a system. More...
class  basic_findvolume_sequence_value_type
 Value type for the basic_findvolume_sequence. More...
class  basic_findvolume_sequence_const_iterator
 Iterator type for the basic_findvolume_sequence, supporting the Input Iterator concept. More...
struct  path_compare
 Binary predicate that compares two file-system paths. More...
struct  path_compare_env
 Binary predicate object that compares two file-system paths, after expanding environment variables in the compared path strings. More...
struct  path_exists
 Unary predicate that indicates whether a given path exists. More...
struct  path_exists_env
 Unary predicate that indicates whether a given path exists, after expanding environment variables in the path string. More...
struct  path_contains_file
 Unary predicate that searches for the existance of a given file in the directory presented in its function call argument. More...
class  memory_mapped_file
 Facade over the Win32 memory mapped file API. More...
class  basic_path
 Class used for composing and decomposing file-system paths. More...
class  pipe
 Class which wraps the Win32 pipe kernel object. More...
struct  message_send
 Functor used to send a message to windows. More...
struct  message_post
 Functor used to post a message to windows. More...
struct  is_visible
 Predicate used to determine whether windows are visible. More...
struct  is_enabled
 Predicate used to determine whether windows are enabled. More...
struct  window_show
 Functor used to show or hide windows. More...
struct  window_enable
 Functor used to enable or disable windows. More...
class  global_allocator
 STL Allocator based on the Win32 Global() API. More...
class  heapwalk_sequence
 An STL-like sequence for walking heap allocated blocks. More...
class  heapwalk_sequence_const_iterator
 Iterator for the heapwalk_sequence class. More...
class  netapi_allocator
 STL Allocator based on the Windows Network Management ApiBuffer API. More...
class  processheap_allocator
 STL Allocator based on the Win32 process heap. More...
class  shell_allocator
 STL Allocator based on the Win32 shell allocator. More...
class  highperformance_counter
 A performance counter that uses the high performance hardware counter on the host machine. More...
class  multimedia_counter
 A low-cost, low-resolution performance counter. More...
class  performance_counter
 A performance counter that uses the most accurate measurement APIs available on the host machine. More...
class  processtimes_counter
 A performance counter that provides process-specific performance timings. More...
class  systemtime_counter
 Performance counter that uses the Windows GetSystemTime() function. More...
class  threadtimes_counter
 A performance counter that provides thread-specific performance timings. More...
class  tick_counter
 A low-cost, low-resolution performance counter. More...
class  registry_exception
 Root exception thrown by the Windows Registry Library. More...
class  key_not_duplicated_exception
 Indicates that a registry key could not be duplicated. More...
class  wrong_value_type_exception
 Indicates a registry value type mismatch. More...
class  access_denied_exception
 Indicates insufficient rights to access a registry key. More...
class  basic_reg_key
 Represents a registry key, and provides methods for manipulating its values and sub-keys. More...
class  basic_reg_key_sequence
 Presents an STL-like sequence interface over the sub-keys of a given registry key. More...
class  basic_reg_key_sequence_iterator
 Iterator for the basic_reg_key_sequence class. More...
struct  reg_traits
 Traits for accessing the correct registry functions for a given character type. More...
class  reg_blob
 Represents a binary registry value. More...
class  basic_reg_value
 Represents a registry value, providing methods for accessing the value in different types. More...
class  basic_reg_value_sequence
 Presents an STL-like sequence interface over the values of a given registry key. More...
class  basic_reg_value_sequence_iterator
 Iterator for the basic_reg_value_sequence class. More...
class  acl_sequence
 Provides an iterable sequence of ACEs in an ACL. More...
class  token_information
 Provides typed access to token information. More...
struct  shell_browse_traits
 Traits for accessing the correct browse information functions for a given character type. More...
struct  drophandle_sequence_traits
 Traits for accessing the correct drop-handle functions for a given character type. More...
class  basic_drophandle_sequence_const_iterator
 Iterator for the basic_drophandle_sequence class. More...
class  basic_drophandle_sequence
 This class wraps an STL-like sequence interface over a Win32 drop handle. More...
class  c_str_ptr_null_HWND_proxy
 This class provides an intermediary object that may be returned by the c_str_ptr_null() function, such that the window text of a given window may be accessed as a null-terminated string. More...
class  c_str_ptr_HWND_proxy
 This class provides an intermediary object that may be returned by the c_str_ptr() function, such that the window text of a given window may be accessed as a null-terminated string. More...
class  c_str_ptr_LSA_UNICODE_STRING_proxy
 This class provides an intermediary object that may be returned by the c_str_ptr_null() function, such that the text of a given LSA_UNICODE_STRING string may be accessed as a null-terminated string. More...
class  c_str_ptr_null_LSA_UNICODE_STRING_proxy
 This class provides an intermediary object that may be returned by the c_str_ptr_null() function, such that the text of a given LSA_UNICODE_STRING string may be accessed as a null-terminated string. More...
class  basic_resource_string
 Instances of this class represent Windows string resources, and are constructed from instance identifiers. More...
class  synchronisation_exception
 Root exception thrown by the Synchronisation library. More...
class  event
 Class which wraps the Win32 EVENT synchronisation object. More...
class  process_mutex
 This class acts as an inter-process mutex based on the Win32 mutex kernel object. More...
struct  process_mutex_lock_traits
 Traits for the process_mutex class. More...
class  semaphore
 This class acts as an semaphore based on the Win32 kernel semaphore object. More...
struct  semaphore_lock_traits
 Traits for the semaphore class. More...
class  spin_mutex_base
 This class provides an implementation of the mutex model based on a spinning mechanism. More...
struct  spin_mutex_lock_traits
 Traits for the spin_mutex class. More...
class  thread_mutex
 This class provides an implementation of the mutex model based on the Win32 CRITICAL_SECTION. More...
struct  thread_mutex_lock_traits
 Traits for the thread_mutex class. More...
class  tss_exception
 Indicates that a TSS key cannot be allocated. More...
class  tss_index
 Wrapper for a Win32 TSS key (TLS index). More...
class  basic_commandline_parser
 Parses a Windows (WinMain()) command line into parts, and provides array semantics for their access. More...
class  console_colour_scope
 Provides scoping of the colour (and intensity) of the console. More...
class  console_ctrl_handler_scope
 Scopes the registration of a console control handler. More...
class  basic_environment_block
 Class used for preparing environment blocks compatible with the Windows CreateProcess() function. More...
class  basic_environment_sequence
 STL-like sequence for the system environment variables. More...
class  basic_environment_variable
 Represents an environment variable. More...
struct  moddir_policy
 Represents the directory of a module. More...
struct  modfname_policy
 Represents a module filename. More...
class  pid_sequence
 Process Id sequence. More...
class  process_module_sequence
 Process module (constituent DLLs) sequence. More...
class  basic_searchpath_sequence
 Presents an STL-like sequence interface to the search path sequence for the current process. More...
struct  sysdir_policy
 Special String Instance policy template for eliciting the Windows System directory. More...
class  system_info
 Provides system information, which provides information regarding the host system, such as number of processors and page size. More...
struct  system_traits
 Traits for accessing the correct system functions for a given character type. More...
class  system_version
 Provides system version information. More...
class  version_info_exception
 Exception thrown by the version_info class. More...
class  fixed_file_info
 Represents the fixed part of a version information block. More...
class  VsVar
 Represents a variable file part of a version information block. More...
class  VsString
 Represents a string part of a version information block. More...
class  VsStringTable
 Represents a string table. More...
class  VsVarFileInfo
 Represents a variable file info part of a version information block. More...
class  VsStringFileInfo
 Represents a variable string part of a version information block. More...
class  version_info
 Provides convenient access to aspects of a module's version information. More...
struct  windir_policy
 Special String Instance policy template for eliciting the Windows directory. More...
struct  toolhelp_exception
 Root exception thrown by the ToolHelp Library. More...
struct  sequence_doesnt_use_pid< HEAPLIST32 >
 [IMPLEMENTATION] Specialisation of sequence_doesnt_use_pid to proscribe use of the non-default constructor of the HEAPLIST32 specialisation of th_sequence_base. More...
struct  sequence_doesnt_use_pid< MODULEENTRY32 >
 [IMPLEMENTATION] Specialisation of sequence_doesnt_use_pid to proscribe use of the non-default constructor of the MODULEENTRY32 specialisation of th_sequence_base. More...
class  th_sequence_const_iterator
 Iterator class for the th_sequence_base class template and its specialisations. More...
struct  sequence_doesnt_use_pid
 [IMPLEMENTATION] A utility class template that is used to to block the non-default constructor for specialisations of th_sequence_base that do not require the process Id. More...
class  th_sequence_base
 Class template for TOOLHELP STL collections. More...
struct  get_undoc_clipboard_fmt__
 get_undoc_clipboard_fmt__ More...
class  HDC_scope
 Scopes the device context of a window. More...
class  setcursor_scope
 Provides scoping of a window's cursor. More...
class  setfocus_scope
 Provides scoping of the focus window. More...
class  window_enable_scope
 Provides scoping of the enable status of a window. More...
class  window_icon_scope
 Provides scoping of the icon(s) of a window. More...
class  window_redraw_scope
 Provides scoping of the redraw status of a window. More...
class  window_text_scope
 Provides scoping of the text of a window. More...
struct  window_traits
 Traits for accessing the correct registry functions for a given character type. More...
class  window_update_scope
 Provides scoping of the update-status of a window. More...
class  window_visible_scope
 Provides scoping of the visible status of a window. More...
class  zorder_iterator_tmpl
 Iterates over the Z-order of window peers. More...
class  zorder_sequence_base
 Window peer sequence. More...

Namespaces

namespace  registry_util
 Internal/implementation namespace containing shared handles.

Typedefs

typedef listview_inserter< false > listview_front_inserter
 A function class used to insert items at the front of list-views.
typedef listview_inserter< true > listview_back_inserter
 A function class used to insert items at the back of list-views.
typedef multibyte2wide< 256 > m2w
 Type that converts a multibyte string to a wide string.
typedef wide2multibyte< 256 > w2m
 Type that converts a wide string to a multibyte string.
typedef multibyte2wide< 256 > a2w
 [Deprecated] Type that converts a multibyte string to a wide string.
typedef wide2multibyte< 256 > w2a
 [Deprecated] Type that converts a wide string to a multibyte string.
typedef basic_resource_id< char > resource_id_a
 Specialisation for use with the ANSI char type.
typedef basic_resource_id
< wchar_t > 
resource_id_w
 Specialisation for use with the Unicode wchar_t type.
typedef basic_resource_id< TCHAR > resource_id
 Specialisation for use with the Windows TCHAR type.
typedef stlsoft::union_caster
< LPARAM, char const *, true > 
StrA2LPARAM
 Checked conversion from char const* to LPARAM.
typedef stlsoft::union_caster
< LPARAM, wchar_t const
*, true > 
StrW2LPARAM
 Checked conversion from wchar_t const* to LPARAM.
typedef stlsoft::union_caster
< LPARAM, TCHAR const *, true > 
StrT2LPARAM
 Checked conversion from TCHAR const* to LPARAM.
typedef stlsoft::union_caster
< HWND, WPARAM, false > 
WPARAM2HWND
 Checked conversion from WPARAM to HWND.
typedef stlsoft::union_caster
< HWND, LPARAM, false > 
LPARAM2HWND
 Checked conversion from LPARAM to HWND.
typedef stlsoft::union_caster
< WPARAM, HWND, false > 
HWND2WPARAM
 Checked conversion from HWND to WPARAM.
typedef stlsoft::union_caster
< LPARAM, HWND, false > 
HWND2LPARAM
 Checked conversion from HWND to LPARAM.
typedef stlsoft::union_caster
< UINT, HWND, false > 
HWND2UINT
 Checked conversion from HWND to UINT.
typedef stlsoft::union_caster
< int, WPARAM, false > 
WPARAM2int
 Checked conversion from WPARAM to int.
typedef stlsoft::union_caster
< WPARAM, int, false > 
int2WPARAM
 Checked conversion from int to WPARAM.
typedef stlsoft::union_caster
< WPARAM, void *, true > 
Ptr2WPARAM
 Checked conversion from void* to WPARAM.
typedef stlsoft::union_caster
< LPARAM, void *, true > 
Ptr2LPARAM
 Checked conversion from void* to LPARAM.
typedef stlsoft::union_caster
< UINT, void *, true > 
Ptr2UINT
 Checked conversion from void* to UINT.
typedef stlsoft::union_caster
< char const *, int, true > 
Id2StrA
 Checked conversion from int to char const*.
typedef stlsoft::union_caster
< wchar_t const *, int, true > 
Id2StrW
 Checked conversion from int to wchar_t const*.
typedef stlsoft::union_caster
< TCHAR const *, int, true > 
Id2StrT
 Checked conversion from int to TCHAR const*.
typedef stlsoft::union_caster
< LPARAM, HICON, false > 
HICON2LPARAM
 Checked conversion from HICON to LPARAM.
typedef stlsoft::union_caster
< HICON, LONG, false > 
LONG2HICON
 Checked conversion from LONG to HICON.
typedef stlsoft::union_caster
< LRESULT, HICON, false > 
HICON2LRESULT
 Checked conversion from HICON to LRESULT.
typedef stlsoft::union_caster
< HICON, LRESULT, false > 
LRESULT2HICON
 Checked conversion from LRESULT to HICON.
typedef basic_error_desc< char > error_desc_a
 Specialisation of the basic_error_desc template for the ANSI character type char.
typedef basic_error_desc< wchar_t > error_desc_w
 Specialisation of the basic_error_desc template for the Unicode character type wchar_t.
typedef basic_error_desc< TCHAR > error_desc
 Specialisation of the basic_error_desc template for the Win32 character type TCHAR.
typedef basic_absolute_path< char > absolute_path_a
 Specialisation of the basic_absolute_path template for the ANSI character type char.
typedef basic_absolute_path
< wchar_t > 
absolute_path_w
 Specialisation of the basic_absolute_path template for the Unicode character type wchar_t.
typedef basic_absolute_path
< TCHAR > 
absolute_path
 Specialisation of the basic_absolute_path template for the Win32 character type TCHAR.
typedef
stlsoft::special_string_instance_0
< cwd_policy< char > > 
current_directory_a
 A Special String Instance that represents the current directory; ANSI specialisation.
typedef
stlsoft::special_string_instance_0
< cwd_policy< wchar_t > > 
current_directory_w
 A Special String Instance that represents the current directory; 'Unicode' specialisation.
typedef
stlsoft::special_string_instance_0
< cwd_policy< TCHAR > > 
current_directory
 A Special String Instance that represents the current directory; TCHAR specialisation.
typedef
basic_current_directory_scope
< char, filesystem_traits
< char > > 
current_directory_scope_a
 Specialisation of the basic_current_directory_scope template for the ANSI character type char.
typedef
basic_current_directory_scope
< wchar_t, filesystem_traits
< wchar_t > > 
current_directory_scope_w
 Specialisation of the basic_current_directory_scope template for the Unicode character type wchar_t.
typedef
basic_current_directory_scope
< TCHAR, filesystem_traits
< TCHAR > > 
current_directory_scope
 Specialisation of the basic_current_directory_scope template for the Win32 character type TCHAR.
typedef basic_file_path_buffer
< char, processheap_allocator
< char > > 
file_path_buffer_a
 Specialisation of the basic_file_path_buffer template for the ANSI character type char.
typedef basic_file_path_buffer
< wchar_t,
processheap_allocator< wchar_t > > 
file_path_buffer_w
 Specialisation of the basic_file_path_buffer template for the Unicode character type wchar_t.
typedef basic_file_path_buffer
< TCHAR, processheap_allocator
< TCHAR > > 
file_path_buffer
 Specialisation of the basic_file_path_buffer template for the ambeint character type TCHAR.
typedef
basic_findfile_sequence< char,
filesystem_traits< char > > 
findfile_sequence_a
 Specialisation of the basic_findfile_sequence template for the ANSI character type char.
typedef
basic_findfile_sequence
< wchar_t, filesystem_traits
< wchar_t > > 
findfile_sequence_w
 Specialisation of the basic_findfile_sequence template for the Unicode character type wchar_t.
typedef
basic_findfile_sequence< TCHAR,
filesystem_traits< TCHAR > > 
findfile_sequence
 Specialisation of the basic_findfile_sequence template for the Win32 character type TCHAR.
typedef
basic_findvolume_sequence
< char, filesystem_traits
< char > > 
findvolume_sequence_a
 Specialisation of the basic_findvolume_sequence template for the ANSI character type char.
typedef
basic_findvolume_sequence
< wchar_t, filesystem_traits
< wchar_t > > 
findvolume_sequence_w
 Specialisation of the basic_findvolume_sequence template for the Unicode character type wchar_t.
typedef
basic_findvolume_sequence
< TCHAR, filesystem_traits
< TCHAR > > 
findvolume_sequence
 Specialisation of the basic_findvolume_sequence template for the Win32 character type TCHAR.
typedef basic_path< char,
filesystem_traits< char > > 
path_a
 Specialisation of the basic_path template for the ANSI character type char.
typedef basic_path< wchar_t,
filesystem_traits< wchar_t > > 
path_w
 Specialisation of the basic_path template for the Unicode character type wchar_t.
typedef basic_path< TCHAR,
filesystem_traits< TCHAR > > 
path
 Specialisation of the basic_path template for the Win32 character type TCHAR.
typedef basic_reg_key< char,
reg_traits< char >
, processheap_allocator< char > > 
reg_key_a
 Specialisation of the basic_reg_key template for the ANSI character type char.
typedef basic_reg_key< wchar_t,
reg_traits< wchar_t >
, processheap_allocator
< wchar_t > > 
reg_key_w
 Specialisation of the basic_reg_key template for the Unicode character type wchar_t.
typedef basic_reg_key< TCHAR,
reg_traits< TCHAR >
, processheap_allocator< TCHAR > > 
reg_key
 Specialisation of the basic_reg_key template for the Win32 character type TCHAR.
typedef basic_reg_key_sequence
< char, reg_traits< char >
, processheap_allocator< char > > 
reg_key_sequence_a
 Specialisation of the basic_reg_key_sequence template for the ANSI character type char.
typedef basic_reg_key_sequence
< wchar_t, reg_traits< wchar_t >
, processheap_allocator
< wchar_t > > 
reg_key_sequence_w
 Specialisation of the basic_reg_key_sequence template for the Unicode character type wchar_t.
typedef basic_reg_key_sequence
< TCHAR, reg_traits< TCHAR >
, processheap_allocator< TCHAR > > 
reg_key_sequence
 Specialisation of the basic_reg_key_sequence template for the Win32 character type TCHAR.
typedef basic_reg_value< char,
reg_traits< char >
, processheap_allocator< char > > 
reg_value_a
 Specialisation of the basic_reg_value template for the ANSI character type char.
typedef basic_reg_value
< wchar_t, reg_traits< wchar_t >
, processheap_allocator
< wchar_t > > 
reg_value_w
 Specialisation of the basic_reg_value template for the Unicode character type wchar_t.
typedef basic_reg_value< TCHAR,
reg_traits< TCHAR >
, processheap_allocator< TCHAR > > 
reg_value
 Specialisation of the basic_reg_value template for the Win32 character type TCHAR.
typedef
basic_reg_value_sequence< char,
reg_traits< char >
, processheap_allocator< char > > 
reg_value_sequence_a
 Specialisation of the basic_reg_value_sequence template for the ANSI character type char.
typedef
basic_reg_value_sequence
< wchar_t, reg_traits< wchar_t >
, processheap_allocator
< wchar_t > > 
reg_value_sequence_w
 Specialisation of the basic_reg_value_sequence template for the Unicode character type wchar_t.
typedef
basic_reg_value_sequence
< TCHAR, reg_traits< TCHAR >
, processheap_allocator< TCHAR > > 
reg_value_sequence
 Specialisation of the basic_reg_value_sequence template for the Win32 character type TCHAR.
typedef
stlsoft::basic_simple_string
< char > 
reg_string_a_t
 String type for ANSI character encoding used by the Registry library.
typedef
stlsoft::basic_simple_string
< wchar_t > 
reg_string_w_t
 String type for Unicode character encoding used by the Registry library.
typedef
stlsoft::basic_simple_string
< TCHAR > 
reg_string_t
 String type for TCHAR character encoding used by the Registry library.
typedef
basic_drophandle_sequence
< char,
drophandle_sequence_traits
< char > > 
drophandle_sequence_a
 Specialisation of the basic_drophandle_sequence template for the ANSI character type char.
typedef
basic_drophandle_sequence
< wchar_t,
drophandle_sequence_traits
< wchar_t > > 
drophandle_sequence_w
 Specialisation of the basic_drophandle_sequence template for the Unicode character type wchar_t.
typedef
basic_drophandle_sequence
< TCHAR,
drophandle_sequence_traits
< TCHAR > > 
drophandle_sequence
 Specialisation of the basic_drophandle_sequence template for the ANSI character type char.
typedef spin_mutex_base
< stlsoft::spin_yield
spin_mutex_yield
typedef spin_mutex_base
< stlsoft::spin_no_yield
spin_mutex_no_yield
typedef spin_mutex_yield spin_mutex
typedef
basic_commandline_parser< char > 
commandline_parser_a
 Specialisation of the basic_commandline_parser template for the ANSI character type char.
typedef
basic_commandline_parser
< wchar_t > 
commandline_parser_w
 Specialisation of the basic_commandline_parser template for the Unicode character type wchar_t.
typedef
basic_commandline_parser
< TCHAR > 
commandline_parser
 Specialisation of the basic_commandline_parser template for the Win32 character type TCHAR.
typedef
basic_environment_block< char > 
environment_block_a
 Specialisation of the basic_path template for the ANSI character type char.
typedef
basic_environment_block
< wchar_t > 
environment_block_w
 Specialisation of the basic_environment_block template for the Unicode character type wchar_t.
typedef
basic_environment_block< TCHAR > 
environment_block
 Specialisation of the basic_environment_block template for the Win32 character type TCHAR.
typedef
basic_environment_sequence
< char > 
environment_sequence_a
 Specialisation of the basic_environment_sequence template for the ANSI character type char.
typedef
basic_environment_sequence
< wchar_t > 
environment_sequence_w
 Specialisation of the basic_environment_sequence template for the Unicode character type wchar_t.
typedef
basic_environment_sequence
< TCHAR > 
environment_sequence
 Specialisation of the basic_environment_sequence template for the Win32 character type TCHAR.
typedef
basic_environment_variable
< char, system_traits< char > > 
environment_variable_a
 Specialisation of the basic_environment_variable template for the ANSI character type char.
typedef
basic_environment_variable
< wchar_t, system_traits
< wchar_t > > 
environment_variable_w
 Specialisation of the basic_environment_variable template for the Unicode character type wchar_t.
typedef
basic_environment_variable
< TCHAR, system_traits< TCHAR > > 
environment_variable
 Specialisation of the basic_environment_variable template for the Win32 character type TCHAR.
typedef
stlsoft::special_string_instance_1
< moddir_policy< char > > 
module_directory_a
 A Special String Instance that represents the module directory; ANSI specialisation.
typedef
stlsoft::special_string_instance_1
< moddir_policy< wchar_t > > 
module_directory_w
 A Special String Instance that represents the module directory; 'Unicode' specialisation.
typedef
stlsoft::special_string_instance_1
< moddir_policy< TCHAR > > 
module_directory
 A Special String Instance that represents the module directory; TCHAR specialisation.
typedef
stlsoft::special_string_instance_1
< modfname_policy< char > > 
module_filename_a
 A Special String Instance that represents the module directory; ANSI specialisation.
typedef
stlsoft::special_string_instance_1
< modfname_policy< wchar_t > > 
module_filename_w
 A Special String Instance that represents the module directory; 'Unicode' specialisation.
typedef
stlsoft::special_string_instance_1
< modfname_policy< TCHAR > > 
module_filename
 A Special String Instance that represents the module directory; TCHAR specialisation.
typedef
basic_searchpath_sequence
< char, filesystem_traits
< char > > 
searchpath_sequence_a
 Specialisation of the basic_searchpath_sequence template for the ANSI character type char.
typedef
basic_searchpath_sequence
< wchar_t, filesystem_traits
< wchar_t > > 
searchpath_sequence_w
 Specialisation of the basic_searchpath_sequence template for the Unicode character type wchar_t.
typedef
basic_searchpath_sequence
< TCHAR, filesystem_traits
< TCHAR > > 
searchpath_sequence
 Specialisation of the basic_searchpath_sequence template for the Win32 character type TCHAR.
typedef
stlsoft::special_string_instance_0
< sysdir_policy< char > > 
system_directory_a
 A Special String Instance that represents the Windows System directory; ANSI specialisation.
typedef
stlsoft::special_string_instance_0
< sysdir_policy< wchar_t > > 
system_directory_w
 A Special String Instance that represents the Windows System directory; 'Unicode' specialisation.
typedef
stlsoft::special_string_instance_0
< sysdir_policy< TCHAR > > 
system_directory
 A Special String Instance that represents the Windows System directory; TCHAR specialisation.
typedef
stlsoft::special_string_instance_0
< windir_policy< char > > 
windows_directory_a
 A Special String Instance that represents the Windows directory; ANSI specialisation.
typedef
stlsoft::special_string_instance_0
< windir_policy< wchar_t > > 
windows_directory_w
 A Special String Instance that represents the Windows directory; 'Unicode' specialisation.
typedef
stlsoft::special_string_instance_0
< windir_policy< TCHAR > > 
windows_directory
 A Special String Instance that represents the Windows directory; TCHAR specialisation.
typedef th_sequence_base
< HEAPLIST32 > 
heap_sequence
 An STL collection for accessing heap information.
typedef th_sequence_base
< MODULEENTRY32 > 
module_sequence
 An STL collection for accessing module information for a given process.
typedef th_sequence_base
< PROCESSENTRY32 > 
process_sequence
 An STL collection for accessing process information.
typedef th_sequence_base
< THREADENTRY32 > 
thread_sequence
 An STL collection for accessing thread information for a given process.
typedef zorder_iterator_tmpl
< zorder_iterator_forward_traits > 
zorder_iterator
 Specialisation of zorder_iterator_tmpl that searches a set of window peers in the forward direction.
typedef zorder_sequence_base
< zorder_iterator_base::fromFirstChild,
zorder_iterator_base::atLastChild > 
child_window_sequence
 Specialisation of zorder_sequence_base that searches the children of a given window.
typedef zorder_sequence_base
< zorder_iterator_base::fromFirstPeer,
zorder_iterator_base::atLastPeer > 
window_peer_sequence
 Specialisation of zorder_sequence_base that searches the peers of a given window.
typedef char char_a_t
typedef wchar_t char_w_t
 !< Ansi char type.
typedef ws_sint8_t sint8_t
 !< Unicode char type.
typedef ws_uint8_t uint8_t
 !< 8-bit signed integer.
typedef ws_int16_t int16_t
 !< 8-bit unsigned integer.
typedef ws_sint16_t sint16_t
 !< 16-bit integer.
typedef ws_uint16_t uint16_t
 !< 16-bit signed integer.
typedef ws_int32_t int32_t
 !< 16-bit unsigned integer.
typedef ws_sint32_t sint32_t
 !< 32-bit integer.
typedef ws_uint32_t uint32_t
 !< 32-bit signed integer.
typedef int int_t
 !< 32-bit unsigned integer.
typedef ws_sint_t sint_t
 !< integer.
typedef ws_uint_t uint_t
 !< signed integer.
typedef ws_long_t long_t
 !< unsigned integer.
typedef ws_byte_t byte_t
 !< long integer.
typedef bool bool_t
 !< Byte.
typedef ws_dword_t dword_t
 !< bool.
typedef ws_streampos_t streampos_t
 !< dword.
typedef ws_streamoff_t streamoff_t
 !< streampos.
typedef ws_sptrint_t sptrint_t
 !< streamoff.
typedef ws_uptrint_t uptrint_t

Enumerations

enum  { MAX_VOL_NAME = WINSTL_CONST_MAX_PATH }
enum  {
  TokenRestrictedSids = 1 + TokenStatistics,
  TokenSessionId,
  TokenGroupsAndPrivileges,
  TokenSessionReference,
  TokenSandBoxInert,
  TokenAuditPolicy,
  TokenOrigin
}
enum  WindowIdent {
  Generic,
  ListBox = 11,
  ComboBox = 12,
  ListView = 13
}

Functions

HANDLE get_kernel_handle (CEvent &ev)
 Overload of the WinSTL get_kernel_handle() shim for MFC's CEvent.
HANDLE get_kernel_handle (CMutex &mx)
 Overload of the WinSTL get_kernel_handle() shim for MFC's CMutex.
HANDLE get_kernel_handle (CSemaphore &sem)
 Overload of the WinSTL get_kernel_handle() shim for MFC's CSemaphore.
HANDLE get_synch_handle (CEvent &ev)
 Overload of the WinSTL get_synch_handle() shim for MFC's CEvent.
HANDLE get_synch_handle (CMutex &mx)
 Overload of the WinSTL get_synch_handle() shim for MFC's CMutex.
HANDLE get_synch_handle (CSemaphore &sem)
 Overload of the WinSTL get_synch_handle() shim for MFC's CSemaphore.
BOOL control_panel_init (control_panel_entry_t entry, HWND hwnd)
 Initialises a control panel applet module.
void control_panel_uninit (control_panel_entry_t entry, HWND hwnd)
 Uninitialises a control panel applet module.
size_t control_panel_get_count (control_panel_entry_t entry, HWND hwnd)
 Retrieves the number of control panel applets within a control panel applet module.
void control_panel_inquire (control_panel_entry_t entry, HWND hwnd, size_t index, LPCPLINFO info)
 Issues an inquiry control (CPL_INQUIRE) to a control panel applet.
void control_panel_newinquire (control_panel_entry_t entry, HWND hwnd, size_t index, LPNEWCPLINFO info)
 Issues a "new" inquiry control (CPL_NEWINQUIRE) to a control panel applet.
BOOL control_panel_run_data (control_panel_entry_t entry, HWND hwnd, size_t index, LONG data)
 Issues a run control (CPL_DBLCLK) to a control panel applet, including caller-supplied data.
BOOL control_panel_run_params_a (control_panel_entry_t entry, HWND hwnd, size_t index, char const *params)
 Issues a run control (CPL_STARTWPARMSA) to a control panel applet, including caller-supplied parameter string.
BOOL control_panel_run_params_w (control_panel_entry_t entry, HWND hwnd, size_t index, wchar_t const *params)
 Issues a run control (CPL_STARTWPARMSW) to a control panel applet, including caller-supplied parameter string.
BOOL control_panel_run (control_panel_entry_t entry, HWND hwnd, size_t index, LONG data)
 Issues a run control (CPL_DBLCLK) to a control panel applet, including caller-supplied data.
BOOL control_panel_run (control_panel_entry_t entry, HWND hwnd, size_t index, char const *params)
 Issues a run control (CPL_STARTWPARMSA) to a control panel applet, including caller-supplied parameter string.
BOOL control_panel_run (control_panel_entry_t entry, HWND hwnd, size_t index, wchar_t const *params)
 Issues a run control (CPL_STARTWPARMSW) to a control panel applet, including caller-supplied parameter string.
void control_panel_stop (control_panel_entry_t entry, HWND hwnd, size_t index, LONG data)
 Issues a stop control (CPL_STOP) to a control panel applet.
HTREEITEM treeview_getnextitem (HWND hwnd, HTREEITEM hitem, UINT flag)
 Gets the next item in the tree view.
HTREEITEM treeview_getchilditem (HWND hwnd, HTREEITEM hitem)
 Gets the tree view child item.
HTREEITEM treeview_getrootitem (HWND hwnd)
 Gets the tree view root item.
HTREEITEM treeview_getcaretitem (HWND hwnd)
 Gets the tree view caret item.
HWND winstl__CreateStatic (HWND hwndParent, char const *name, int x, int y, int cx, int cy, int id)
HWND winstl__CreateStatic (HWND hwndParent, wchar_t const *name, int x, int y, int cx, int cy, int id)
HWND winstl__CreateEdit (HWND hwndParent, char const *text, DWORD editStyle, int x, int y, int cx, int cy, int id)
HWND winstl__CreateEdit (HWND hwndParent, wchar_t const *text, DWORD editStyle, int x, int y, int cx, int cy, int id)
HWND winstl__CreateCheckbox (HWND hwndParent, char const *name, DWORD buttonStyle, int x, int y, int cx, int cy, int id)
HWND winstl__CreateCheckbox (HWND hwndParent, wchar_t const *name, DWORD buttonStyle, int x, int y, int cx, int cy, int id)
template<typename S>
HWND CreateStatic (HWND hwndParent, S const &name, int x, int y, int cx, int cy, int id)
template<typename S>
HWND CreateStatic (HWND hwndParent, S const &name, RECT const &rc, int id)
template<typename S>
HWND CreateEdit (HWND hwndParent, S const &text, DWORD editStyle, int x, int y, int cx, int cy, int id)
template<typename S>
HWND CreateEdit (HWND hwndParent, S const &text, DWORD editStyle, RECT const &rc, int id)
HWND CreateStaticFrame (HWND hwndParent, DWORD frameStyle, int x, int y, int cx, int cy, int id=-1)
HWND CreateStaticFrame (HWND hwndParent, DWORD frameStyle, RECT const &rc, int id=-1)
template<typename S>
HWND CreateCheckbox (HWND hwndParent, S const &name, DWORD buttonStyle, int x, int y, int cx, int cy, int id)
template<typename S>
HWND CreateCheckbox (HWND hwndParent, S const &name, DWORD buttonStyle, RECT const &rc, int id)
template<typename C, typename A, typename S, typename Q>
bool operator== (typename edit_line_sequence< C, A, S, Q >::const_iterator const &lhs, typename edit_line_sequence< C, A, S, Q >::const_iterator const &rhs)
template<typename C, typename A, typename S, typename Q>
bool operator!= (typename edit_line_sequence< C, A, S, Q >::const_iterator const &lhs, typename edit_line_sequence< C, A, S, Q >::const_iterator const &rhs)
int combobox_addstring_a (HWND hwnd, char const *s)
 Adds an ANSI string to a combo-box.
int combobox_addstring_w (HWND hwnd, wchar_t const *s)
 Adds a Unicode string to a combo-box.
int combobox_addstring (HWND hwnd, char const *s)
 Adds a string to a combo-box.
int combobox_addstring (HWND hwnd, wchar_t const *s)
 Adds a string to a combo-box.
template<typename S>
int combobox_addstring (HWND hwnd, S const &s)
 Adds a string to a combo-box.
int combobox_insertstring_a (HWND hwnd, char const *s, int index)
 Inserts an ANSI string into a combo-box at the given index.
int combobox_insertstring_w (HWND hwnd, wchar_t const *s, int index)
 Inserts a Unicode string into a combo-box at the given index.
int combobox_insertstring (HWND hwnd, char const *s, int index)
 Inserts a string into a combo-box at the given index.
int combobox_insertstring (HWND hwnd, wchar_t const *s, int index)
 Inserts a string into a combo-box at the given index.
template<typename S>
int combobox_insertstring (HWND hwnd, S const &s, int index)
 Inserts a string into a combo-box at the given index.
int combobox_gettextlen (HWND hwnd, int index)
 Gets the text length of an item in a combo-box.
int combobox_gettext_a (HWND hwnd, int index, char *s)
 Gets the text (in ANSI encoding) of an item in a combo-box.
int combobox_gettext_w (HWND hwnd, int index, wchar_t *s)
 Gets the text (in Unicode encoding) of an item in a combo-box.
int combobox_gettext (HWND hwnd, int index, char *s)
 Gets the text of an item in a combo-box.
int combobox_gettext (HWND hwnd, int index, wchar_t *s)
 Gets the text (in Unicode encoding) of an item in a combo-box.
ws_dword_t combobox_getitemdata (HWND hwnd, int index)
 Gets the data value associated with an item in a combo-box.
int combobox_getcount (HWND hwnd)
 Gets the number of items in a combo-box.
int listbox_addstring_a (HWND hwnd, char const *s)
 Adds an ANSI string to a list-box.
int listbox_addstring_w (HWND hwnd, wchar_t const *s)
 Adds a Unicode string to a list-box.
int listbox_addstring (HWND hwnd, char const *s)
 Adds a string to a list-box.
int listbox_addstring (HWND hwnd, wchar_t const *s)
 Adds a string to a list-box.
template<typename S>
int listbox_addstring (HWND hwnd, S const &s)
 Adds a string to a list-box.
int listbox_insertstring_a (HWND hwnd, char const *s, int index)
 Inserts an ANSI string into a list-box at the given index.
int listbox_insertstring_w (HWND hwnd, wchar_t const *s, int index)
 Inserts a Unicode string into a list-box at the given index.
int listbox_insertstring (HWND hwnd, char const *s, int index)
 Inserts a string into a list-box at the given index.
int listbox_insertstring (HWND hwnd, wchar_t const *s, int index)
 Inserts a string into a list-box at the given index.
template<typename S>
int listbox_insertstring (HWND hwnd, S const &s, int index)
 Inserts a string into a list-box at the given index.
int listbox_gettextlen (HWND hwnd, int index)
 Gets the text length of an item in a list-box.
int listbox_gettext_a (HWND hwnd, int index, char *s)
 Gets the text (in ANSI encoding) of an item in a list-box.
int listbox_gettext_w (HWND hwnd, int index, wchar_t *s)
 Gets the text (in Unicode encoding) of an item in a list-box.
int listbox_gettext (HWND hwnd, int index, char *s)
 Gets the text of an item in a list-box.
int listbox_gettext (HWND hwnd, int index, wchar_t *s)
 Gets the text (in Unicode encoding) of an item in a list-box.
ws_dword_t listbox_getitemdata (HWND hwnd, int index)
 Gets the data value associated with an item in a list-box.
int listbox_getcount (HWND hwnd)
 Gets the number of items in a list-box.
int edit_getcount (HWND hwnd)
 Gets the number of lines in an edit-box.
int edit_linelength (HWND hwnd, int charIndex)
 Gets the length of the line in which the given character resides.
int edit_getline (HWND hwnd, int lineIndex, char *buffer, size_t cchBuffer)
 Gets a copy of the text of the given line.
int edit_getline (HWND hwnd, int lineIndex, wchar_t *buffer, size_t cchBuffer)
 Gets a copy of the text of the given line.
stlsoft::basic_shim_string
< TCHAR, 64, true,
processheap_allocator< TCHAR > > 
c_str_ptr_null (listview_sequence_item const &lvi)
stlsoft::basic_shim_string
< TCHAR, 64, true,
processheap_allocator< TCHAR > > 
c_str_ptr_null_a (listview_sequence_item const &lvi)
stlsoft::basic_shim_string
< TCHAR, 64, false,
processheap_allocator< TCHAR > > 
c_str_ptr (listview_sequence_item const &lvi)
stlsoft::basic_shim_string
< TCHAR, 64, true,
processheap_allocator< TCHAR > > 
c_str_ptr_a (listview_sequence_item const &lvi)
stlsoft::basic_shim_string
< TCHAR, 64, false,
processheap_allocator< TCHAR > > 
c_str_data (listview_sequence_item const &lvi)
stlsoft::basic_shim_string
< TCHAR, 64, true,
processheap_allocator< TCHAR > > 
c_str_data_a (listview_sequence_item const &lvi)
size_t c_str_len (listview_sequence_item const &lvi)
template<typename S>
S & operator<< (S &s, listview_sequence_item const &lvi)
template<size_t CCH>
wchar_t const * c_str_ptr_null (winstl_ns_qual(multibyte2wide)< CCH > const &b)
 c_str_ptr_null String Access Shim for winstl::multibyte2wide
template<size_t CCH>
wchar_t const * c_str_ptr (winstl_ns_qual(multibyte2wide)< CCH > const &b)
 c_str_ptr String Access Shim for winstl::multibyte2wide
template<size_t CCH>
wchar_t const * c_str_data (winstl_ns_qual(multibyte2wide)< CCH > const &b)
 c_str_data String Access Shim for winstl::multibyte2wide
template<size_t CCH>
size_t c_str_len (winstl_ns_qual(multibyte2wide)< CCH > const &b)
 c_str_len String Access Shim for winstl::multibyte2wide
template<size_t CCH>
char const * c_str_ptr_null (winstl_ns_qual(wide2multibyte)< CCH > const &b)
 c_str_ptr_null String Access Shim for winstl::wide2multibyte
template<size_t CCH>
char const * c_str_ptr (winstl_ns_qual(wide2multibyte)< CCH > const &b)
 c_str_ptr String Access Shim for winstl::wide2multibyte
template<size_t CCH>
char const * c_str_data (winstl_ns_qual(wide2multibyte)< CCH > const &b)
 c_str_data String Access Shim for winstl::wide2multibyte
template<size_t CCH>
size_t c_str_len (winstl_ns_qual(wide2multibyte)< CCH > const &b)
 c_str_len String Access Shim for winstl::wide2multibyte
template<typename S, size_t CCH>
S & operator<< (S &s, winstl_ns_qual(multibyte2wide)< CCH > const &b)
 stream insertion shim for winstl::multibyte2wide
template<typename S, size_t CCH>
S & operator<< (S &s, winstl_ns_qual(wide2multibyte)< CCH > const &b)
 stream insertion shim for winstl::wide2multibyte
template<typename C>
C const * int_to_string (ws_sint8_t value)
 Converts a signed 8-bit integer to a character string.
template<typename C>
C const * int_to_string (ws_uint8_t value)
 Converts a unsigned 8-bit integer to a character string.
template<typename C>
C const * int_to_string (ws_sint16_t value)
 Converts a signed 16-bit integer to a character string.
template<typename C>
C const * int_to_string (ws_uint16_t value)
 Converts a unsigned 16-bit integer to a character string.
template<typename C>
C const * int_to_string (ws_sint32_t value)
 Converts a signed 32-bit integer to a character string.
template<typename C>
C const * int_to_string (ws_uint32_t value)
 Converts a unsigned 32-bit integer to a character string.
template<typename C>
C const * int_to_string (ws_sint64_t const &value)
 Converts a signed 64-bit integer to a character string.
template<typename C>
C const * int_to_string (ws_uint64_t const &value)
 Converts a unsigned 64-bit integer to a character string.
template<typename C, typename N>
size_t format_thousands (C *dest, size_t cchDest, N const &number)
template<int cc, typename S>
function_descriptor< cc, S > fn_desc (S const &functionName)
template<typename S>
function_descriptor< 0, S > fn_desc (int cc, S const &functionName)
template<typename T>
T const & lock_name_ (T const &t, dl_call_traits::is_not_fd)
template<int cc, typename S>
S const & lock_name_ (function_descriptor< cc, S > const &fd, dl_call_traits::is_fd)
dl_call_traits::is_fd test_fd_ (function_descriptor_base const *)
dl_call_traits::library_is_handle test_library_ (dl_call_traits::library_handle_type const &)
template<typename T>
dl_call_traits::library_is_not_handle test_library_ (T const &)
dl_call_traits::entry_point_type lookup_symbol_ (dl_call_traits::library_handle_type hinst, char const *functionName)
template<typename C>
calling_convention::calling_convention determine_calling_convention_ (C const *&functionName)
template<typename S>
char const * detect_cc_ (dl_call_traits::is_not_fd, char const *functionName, S const &, calling_convention::calling_convention &cc)
template<int CC, typename C>
char const * detect_cc_ (dl_call_traits::is_fd, char const *functionName, function_descriptor< CC, C > const &fd, calling_convention::calling_convention &cc)
HINSTANCE get_module_handle (winstl_ns_qual(module) const &m)
 Returns the module handle for the given module.
template<typename C, typename T>
C const * c_str_ptr_null (winstl_ns_qual(basic_error_desc)< C, T > const &e)
 c_str_ptr_null String Access Shim for winstl::basic_error_desc
template<typename C, typename T>
C const * c_str_ptr (winstl_ns_qual(basic_error_desc)< C, T > const &e)
 c_str_ptr String Access Shim for winstl::basic_error_desc
template<typename C, typename T>
C const * c_str_data (winstl_ns_qual(basic_error_desc)< C, T > const &e)
 c_str_data String Access Shim for winstl::basic_error_desc
template<typename C, typename T>
size_t c_str_len (winstl_ns_qual(basic_error_desc)< C, T > const &e)
 c_str_len String Access Shim for winstl::basic_error_desc
template<typename C, typename T>
C const * get_ptr (winstl_ns_qual(basic_error_desc)< C, T > const &e)
 [DEPRECATED] stlsoft::get_ptr Pointer Attribute Shim for winstl::basic_error_desc
template<typename S, typename C, typename T>
S & operator<< (S &s, winstl_ns_qual(basic_error_desc)< C, T > const &e)
 stream insertion shim for winstl::basic_error_desc
ws_dword_t format_message (ws_dword_t error, HINSTANCE hinst, char *buffer, ws_uint_t cchBuffer)
ws_dword_t format_message (ws_dword_t error, HINSTANCE hinst, wchar_t *buffer, ws_uint_t cchBuffer)
ws_dword_t format_message (ws_dword_t error, char *buffer, ws_uint_t cchBuffer)
ws_dword_t format_message (ws_dword_t error, wchar_t *buffer, ws_uint_t cchBuffer)
ws_dword_t format_message (ws_dword_t error, HINSTANCE hinst, char **buffer)
ws_dword_t format_message (ws_dword_t error, HINSTANCE hinst, wchar_t **buffer)
void format_message_free_buff (char *buffer)
void format_message_free_buff (wchar_t *buffer)
template<typename C>
basic_absolute_path< C > make_absolute_path (C const *path)
 This creator function makes an absolute path variable without needing to qualify the template parameter.
template<typename C, typename T>
C const * c_str_ptr_null (basic_current_directory_scope< C, T > const &b)
template<typename C, typename T>
C const * c_str_ptr (basic_current_directory_scope< C, T > const &b)
template<typename C, typename T>
C const * c_str_data (basic_current_directory_scope< C, T > const &b)
template<typename C, typename T>
size_t c_str_len (basic_current_directory_scope< C, T > const &b)
template<typename S, typename C, typename T>
S & operator<< (S &s, basic_current_directory_scope< C, T > const &b)
template<typename C>
C * find_last_path_name_separator_ (C const *s)
template<typename C>
bool create_directory_recurse_impl (C const *dir, LPSECURITY_ATTRIBUTES lpsa)
template<typename C, typename FD>
ws_dword_t remove_directory_recurse_impl (C const *dir, int(*pfn)(void *param, C const *subDir, FD const *st, DWORD err), void *param)
bool create_directory_recurse (char const *dir, LPSECURITY_ATTRIBUTES lpsa=NULL)
 Creates the given directory, including all its parent directories, applying the given mode.
bool create_directory_recurse (wchar_t const *dir, LPSECURITY_ATTRIBUTES lpsa=NULL)
 Creates the given directory, including all its parent directories, applying the given mode.
template<typename S>
bool create_directory_recurse (S const &dir, LPSECURITY_ATTRIBUTES lpsa=NULL)
 Creates the given directory, including all its parent directories, applying the given mode.
bool remove_directory_recurse (char const *dir, int(*pfn)(void *param, charconst *subDir, WIN32_FIND_DATAA const *st, DWORD err), void *param)
 Removes the given directory, and all its subdirectories.
bool remove_directory_recurse (wchar_t const *dir, int(*pfn)(void *param, wchar_tconst *subDir, WIN32_FIND_DATAW const *st, DWORD err), void *param)
 Removes the given directory, and all its subdirectories.
bool remove_directory_recurse (wchar_t const *dir)
 Removes the given directory, and all its subdirectories.
HANDLE open_file_read_shared (char const *fileName, DWORD dwShareMode)
 Opens an existing file for shared read access.
HANDLE open_file_read_shared (wchar_t const *fileName, DWORD dwShareMode)
 Opens an existing file for shared read access.
template<typename S1, typename S2>
ws_uint64_t load_text_file (S1 const &fileName, S2 &contents)
 Loads a text file into a string.
template<typename CH, typename C>
void readlines_impl (CH const *p, size_t len, C &container)
template<typename S, typename C>
C & readlines (S const &fileName, C &container)
 Reads the lines of a text-file into a sequence container.
template<typename C, typename A>
void swap (basic_file_path_buffer< C, A > &lhs, basic_file_path_buffer< C, A > &rhs)
template<typename C, typename A>
C const * c_str_data (winstl_ns_qual(basic_file_path_buffer)< C, A > const &b)
 c_str_data String Access Shim for winstl::basic_file_path_buffer
template<typename C, typename A>
size_t c_str_len (winstl_ns_qual(basic_file_path_buffer)< C, A > const &b)
 c_str_len String Access Shim for winstl::basic_file_path_buffer
template<typename C, typename A>
C const * c_str_ptr (winstl_ns_qual(basic_file_path_buffer)< C, A > const &b)
 c_str_ptr String Access Shim for winstl::basic_file_path_buffer
template<typename C, typename A>
C const * c_str_ptr_null (winstl_ns_qual(basic_file_path_buffer)< C, A > const &b)
 c_str_ptr_null String Access Shim for winstl::basic_file_path_buffer
template<typename S, typename C, typename A>
S & operator<< (S &s, winstl_ns_qual(basic_file_path_buffer)< C, A > const &b)
 stream insertion shim for winstl::basic_file_path_buffer
template<typename C, typename T, typename V>
bool operator== (basic_findfile_sequence_const_input_iterator< C, T, V > const &lhs, basic_findfile_sequence_const_input_iterator< C, T, V > const &rhs)
template<typename C, typename T, typename V>
bool operator!= (basic_findfile_sequence_const_input_iterator< C, T, V > const &lhs, basic_findfile_sequence_const_input_iterator< C, T, V > const &rhs)
template<typename C, typename T>
bool operator== (basic_findfile_sequence_value_type< C, T > const &lhs, basic_findfile_sequence_value_type< C, T > const &rhs)
template<typename C, typename T>
bool operator== (basic_findfile_sequence_value_type< C, T > const &lhs, C const *rhs)
template<typename C, typename T>
bool operator== (C const *lhs, basic_findfile_sequence_value_type< C, T > const &rhs)
template<typename C, typename T>
bool operator!= (basic_findfile_sequence_value_type< C, T > const &lhs, basic_findfile_sequence_value_type< C, T > const &rhs)
template<typename C, typename T>
bool operator!= (basic_findfile_sequence_value_type< C, T > const &lhs, C const *rhs)
template<typename C, typename T>
bool operator!= (C const *lhs, basic_findfile_sequence_value_type< C, T > const &rhs)
template<typename S, typename C, typename T>
S & operator<< (S &s, basic_findfile_sequence_value_type< C, T > const &value)
template<typename C, typename T>
C const * c_str_data (winstl_ns_qual(basic_findfile_sequence_value_type)< C, T > const &v)
 c_str_data String Access Shim for winstl::basic_findfile_sequence_value_type
template<typename C, typename T>
size_t c_str_len (winstl_ns_qual(basic_findfile_sequence_value_type)< C, T > const &v)
 c_str_len String Access Shim for winstl::basic_findfile_sequence_value_type
template<typename C, typename T>
C const * c_str_ptr (winstl_ns_qual(basic_findfile_sequence_value_type)< C, T > const &v)
 c_str_ptr String Access Shim for winstl::basic_findfile_sequence_value_type
template<typename C, typename T>
C const * c_str_ptr_null (winstl_ns_qual(basic_findfile_sequence_value_type)< C, T > const &v)
 c_str_ptr_null String Access Shim for winstl::basic_findfile_sequence_value_type
template<typename C, typename T>
C const * c_str_data (winstl_ns_qual(basic_findvolume_sequence_value_type)< C, T > const &v)
 c_str_data String Access Shim for winstl::basic_findvolume_sequence_value_type
template<typename C, typename T>
size_t c_str_len (winstl_ns_qual(basic_findvolume_sequence_value_type)< C, T > const &v)
 c_str_len String Access Shim for winstl::basic_findvolume_sequence_value_type
template<typename C, typename T>
C const * c_str_ptr (winstl_ns_qual(basic_findvolume_sequence_value_type)< C, T > const &v)
 c_str_ptr String Access Shim for winstl::basic_findvolume_sequence_value_type
template<typename C, typename T>
C const * c_str_ptr_null (winstl_ns_qual(basic_findvolume_sequence_value_type)< C, T > const &v)
 c_str_ptr_null String Access Shim for winstl::basic_findvolume_sequence_value_type
template<typename C, typename T, typename A>
bool operator== (basic_path< C, T, A > const &lhs, typename basic_path< C, T, A >::char_type const *rhs)
template<typename C, typename T, typename A>
bool operator!= (basic_path< C, T, A > const &lhs, typename basic_path< C, T, A >::char_type const *rhs)
template<typename C, typename T, typename A>
bool operator== (typename basic_path< C, T, A >::char_type const *lhs, basic_path< C, T, A > const &rhs)
template<typename C, typename T, typename A>
bool operator!= (typename basic_path< C, T, A >::char_type const *lhs, basic_path< C, T, A > const &rhs)
template<typename C, typename T, typename A>
bool operator== (basic_path< C, T, A > const &lhs, basic_path< C, T, A > const &rhs)
template<typename C, typename T, typename A>
bool operator!= (basic_path< C, T, A > const &lhs, basic_path< C, T, A > const &rhs)
template<typename C, typename T, typename A>
basic_path< C, T, A > operator/ (basic_path< C, T, A > const &lhs, typename basic_path< C, T, A >::char_type const *rhs)
 Concatenates rhs to the path lhs.
template<typename C, typename T, typename A>
basic_path< C, T, A > operator/ (typename basic_path< C, T, A >::char_type const *lhs, basic_path< C, T, A > const &rhs)
 Concatenates rhs to the path lhs.
template<typename C, typename T, typename A>
basic_path< C, T, A > operator/ (basic_path< C, T, A > const &lhs, basic_path< C, T, A > const &rhs)
 Concatenates rhs to the path lhs.
template<typename C, typename T, typename A>
void swap (basic_path< C, T, A > &lhs, basic_path< C, T, A > &rhs)
template<typename C, typename T, typename A>
C const * c_str_data (winstl_ns_qual(basic_path)< C, T, A > const &b)
 c_str_data String Access Shim for winstl::basic_path
template<typename C, typename T, typename A>
size_t c_str_len (winstl_ns_qual(basic_path)< C, T, A > const &b)
 c_str_len String Access Shim for winstl::basic_path
template<typename C, typename T, typename A>
C const * c_str_ptr (winstl_ns_qual(basic_path)< C, T, A > const &b)
 c_str_ptr String Access Shim for winstl::basic_path
template<typename C, typename T, typename A>
C const * c_str_ptr_null (winstl_ns_qual(basic_path)< C, T, A > const &b)
 c_str_ptr_null String Access Shim for winstl::basic_path
template<typename S, typename C, typename T, typename A>
S & operator<< (S &s, winstl_ns_qual(basic_path)< C, T, A > const &b)
 stream insertion shim for winstl::basic_path
template<typename S, typename C>
size_t path_squeeze (S const &path, C *buffer, size_t cchBuffer)
 Squeezes a path into a fixed length character buffer.
BOOL CreateProcess (char const *cmdLine, DWORD flags, void const *envBlock)
BOOL CreateProcess (char const *cmdLine, void const *envBlock)
BOOL CreateProcess (char const *cmdLine)
template<typename C>
LONG reg_get_string_value (HKEY hkey, C const *name, C *buffer, size_t &cchBuffer)
 Gets the contents of a registry key's string value into a caller-supplied buffer.
template<typename C>
LONG reg_get_dword_value (HKEY hkey, C const *name, DWORD &value)
 Gets the contents of a registry key's DWORD value into a caller-supplied variable.
template<typename C, typename T, typename A>
HKEY get_handle (basic_reg_key< C, T, A > const &key)
 [Shim function] Returns the corresponding registry handle of an instance of winstl::basic_reg_key basic_reg_key.
template<typename C, typename T, typename A>
HKEY get_HKEY (basic_reg_key< C, T, A > const &key)
 [Shim function] Returns the corresponding registry handle of an instance of winstl::basic_reg_key basic_reg_key.
template<typename S, typename C>
bool browse_for_folder (S const &title, C *displayName, UINT flags, HWND hwndOwner, LPCITEMIDLIST pidlRoot)
 Browses the shell namespace according to the given parameters.
template<typename S0, typename C, typename S1>
bool browse_for_folder (S0 const &title, C *displayName, UINT flags, HWND hwndOwner, LPCITEMIDLIST pidlRoot, S1 const &defaultFolder)
 Browses the shell namespace according to the given parameters.
template<typename S, typename C>
bool browse_for_folder (S const &title, C *displayName, UINT flags, HWND hwndOwner)
 Browses the shell namespace according to the given parameters.
template<typename S, typename C>
bool browse_for_folder (S const &title, C *displayName, UINT flags, LPCITEMIDLIST pidlRoot)
 Browses the shell namespace according to the given parameters.
template<typename S, typename C>
bool browse_for_folder (S const &title, C *displayName, UINT flags)
 Browses the shell namespace according to the given parameters.
template<typename S0, typename C, typename S1>
bool browse_for_folder (S0 const &title, C *displayName, UINT flags, S1 const &defaultFolder)
 Browses the shell namespace according to the given parameters.
template<typename S, typename C>
bool browse_for_folder (S const &title, C *displayName)
 Browses the shell namespace according to the given parameters.
template<typename C, typename T>
bool operator== (basic_drophandle_sequence_const_iterator< C, T > const &lhs, basic_drophandle_sequence_const_iterator< C, T > const &rhs)
template<typename C, typename T>
bool operator!= (basic_drophandle_sequence_const_iterator< C, T > const &lhs, basic_drophandle_sequence_const_iterator< C, T > const &rhs)
int shell_delete (char const *from)
 Requests the shell to delete the given file.
int shell_delete (char const *from, bool &bAborted)
 Requests the shell to delete the given file.
int shell_delete (char const *from, FILEOP_FLAGS flags)
 Requests the shell to delete the given file.
int shell_delete (char const *from, FILEOP_FLAGS flags, bool &bAborted)
 Requests the shell to delete the given file.
int shell_delete (char const *from, char const *progressTitle)
 Requests the shell to delete the given file.
int shell_delete (char const *from, char const *progressTitle, bool &bAborted)
 Requests the shell to delete the given file.
int shell_delete (char const *from, char const *progressTitle, FILEOP_FLAGS flags)
 Requests the shell to delete the given file.
int shell_delete (char const *from, char const *progressTitle, FILEOP_FLAGS flags, bool &bAborted)
 Requests the shell to delete the given file.
int shell_delete (HWND hwnd, char const *from)
 Requests the shell to delete the given file.
int shell_delete (HWND hwnd, char const *from, bool &bAborted)
 Requests the shell to delete the given file.
int shell_delete (HWND hwnd, char const *from, FILEOP_FLAGS flags)
 Requests the shell to delete the given file.
int shell_delete (HWND hwnd, char const *from, FILEOP_FLAGS flags, bool &bAborted)
 Requests the shell to delete the given file.
int shell_delete (HWND hwnd, char const *from, char const *progressTitle)
 Requests the shell to delete the given file.
int shell_delete (HWND hwnd, char const *from, char const *progressTitle, bool &bAborted)
 Requests the shell to delete the given file.
int shell_delete (HWND hwnd, char const *from, char const *progressTitle, FILEOP_FLAGS flags)
 Requests the shell to delete the given file.
int shell_delete (HWND hwnd, char const *from, char const *progressTitle, FILEOP_FLAGS flags, bool &bAborted)
 Requests the shell to delete the given file.
int shell_delete (wchar_t const *from)
 Requests the shell to delete the given file.
int shell_delete (wchar_t const *from, bool &bAborted)
 Requests the shell to delete the given file.
int shell_delete (wchar_t const *from, FILEOP_FLAGS flags)
 Requests the shell to delete the given file.
int shell_delete (wchar_t const *from, FILEOP_FLAGS flags, bool &bAborted)
 Requests the shell to delete the given file.
int shell_delete (wchar_t const *from, wchar_t const *progressTitle)
 Requests the shell to delete the given file.
int shell_delete (wchar_t const *from, wchar_t const *progressTitle, bool &bAborted)
 Requests the shell to delete the given file.
int shell_delete (wchar_t const *from, wchar_t const *progressTitle, FILEOP_FLAGS flags)
 Requests the shell to delete the given file.
int shell_delete (wchar_t const *from, wchar_t const *progressTitle, FILEOP_FLAGS flags, bool &bAborted)
 Requests the shell to delete the given file.
int shell_delete (HWND hwnd, wchar_t const *from)
 Requests the shell to delete the given file.
int shell_delete (HWND hwnd, wchar_t const *from, bool &bAborted)
 Requests the shell to delete the given file.
int shell_delete (HWND hwnd, wchar_t const *from, FILEOP_FLAGS flags)
 Requests the shell to delete the given file.
int shell_delete (HWND hwnd, wchar_t const *from, FILEOP_FLAGS flags, bool &bAborted)
 Requests the shell to delete the given file.
int shell_delete (HWND hwnd, wchar_t const *from, wchar_t const *progressTitle)
 Requests the shell to delete the given file.
int shell_delete (HWND hwnd, wchar_t const *from, wchar_t const *progressTitle, bool &bAborted)
 Requests the shell to delete the given file.
int shell_delete (HWND hwnd, wchar_t const *from, wchar_t const *progressTitle, FILEOP_FLAGS flags)
 Requests the shell to delete the given file.
int shell_delete (HWND hwnd, wchar_t const *from, wchar_t const *progressTitle, FILEOP_FLAGS flags, bool &bAborted)
 Requests the shell to delete the given file.
void * SHMemAlloc (size_t cb)
 Allocates a block of shell memory.
void SHMemFree (void *pv)
 Deallocates a block of shell memory.
void * SHMemRealloc (void *pv, size_t cb)
 Changes the size of a previously allocated block of shell memory.
size_t SHMemGetSize (void *pv)
 Gives the size of a memory block.
ws_sint_t SHMemDidAlloc (void *pv)
 Determines allocation ownership of a memory block.
void SHMemHeapMinimise ()
 Minimises the heap.
void SHMemHeapMinimize ()
 Minimises the heap.
template<typename C, typename S>
S & operator<< (S &s, c_str_ptr_null_HWND_proxy< C > const &shim)
template<typename C, typename S>
S & operator<< (S &s, c_str_ptr_HWND_proxy< C > const &shim)
c_str_ptr_HWND_proxy< TCHAR > c_str_data (HWND h)
 c_str_data String Access Shim for HWND
size_t c_str_len (HWND h)
 c_str_len String Access Shim for HWND
c_str_ptr_HWND_proxy< TCHAR > c_str_ptr (HWND h)
 c_str_ptr String Access Shim for HWND
c_str_ptr_null_HWND_proxy< TCHAR > c_str_ptr_null (HWND h)
 c_str_ptr_null String Access Shim for HWND
template<typename S>
S & operator<< (S &s, c_str_ptr_LSA_UNICODE_STRING_proxy const &shim)
template<typename S>
S & operator<< (S &s, c_str_ptr_null_LSA_UNICODE_STRING_proxy const &shim)
LPCWSTR c_str_data (LSA_UNICODE_STRING const &s)
 c_str_data String Access Shim for LSA_UNICODE_STRING
size_t c_str_len (LSA_UNICODE_STRING const &s)
 c_str_len String Access Shim for LSA_UNICODE_STRING
c_str_ptr_LSA_UNICODE_STRING_proxy c_str_ptr (LSA_UNICODE_STRING const &s)
 c_str_ptr String Access Shim for LSA_UNICODE_STRING
c_str_ptr_null_LSA_UNICODE_STRING_proxy c_str_ptr_null (LSA_UNICODE_STRING const &s)
 c_str_ptr_null String Access Shim for LSA_UNICODE_STRING
SYSTEMTIME FILETIME2SYSTEMTIME (FILETIME const &ft)
 [DEPRECATED] Converts a FILETIME value to a SYSTEMTIME value.
template<typename S>
void stream_insert (S &stm, SYSTEMTIME const &t)
template<typename S>
void stream_insert (S &stm, FILETIME const &ft)
template<typename S>
void stream_insert (S &stm, UDATE const &ud)
stlsoft::basic_shim_string< char > c_str_ptr_a (SYSTEMTIME const &t, bool bMilliseconds)
stlsoft::basic_shim_string< char > c_str_ptr_a (SYSTEMTIME const &t)
stlsoft::basic_shim_string
< wchar_t > 
c_str_ptr_w (SYSTEMTIME const &t, bool bMilliseconds)
stlsoft::basic_shim_string
< wchar_t > 
c_str_ptr_w (SYSTEMTIME const &t)
stlsoft::basic_shim_string< TCHAR > c_str_ptr (SYSTEMTIME const &t, bool bMilliseconds)
stlsoft::basic_shim_string< TCHAR > c_str_ptr (SYSTEMTIME const &t)
stlsoft::basic_shim_string< char > c_str_ptr_a (FILETIME const &t, bool bMilliseconds)
stlsoft::basic_shim_string< char > c_str_ptr_a (FILETIME const &t)
stlsoft::basic_shim_string
< wchar_t > 
c_str_ptr_w (FILETIME const &t, bool bMilliseconds)
stlsoft::basic_shim_string
< wchar_t > 
c_str_ptr_w (FILETIME const &t)
stlsoft::basic_shim_string< TCHAR > c_str_ptr (FILETIME const &t, bool bMilliseconds)
stlsoft::basic_shim_string< TCHAR > c_str_ptr (FILETIME const &t)
stlsoft::basic_shim_string< char > c_str_ptr_a (UDATE const &ud, bool bMilliseconds)
stlsoft::basic_shim_string< char > c_str_ptr_a (UDATE const &ud)
stlsoft::basic_shim_string
< wchar_t > 
c_str_ptr_w (UDATE const &ud, bool bMilliseconds)
stlsoft::basic_shim_string
< wchar_t > 
c_str_ptr_w (UDATE const &ud)
stlsoft::basic_shim_string< TCHAR > c_str_ptr (UDATE const &ud, bool bMilliseconds)
stlsoft::basic_shim_string< TCHAR > c_str_ptr (UDATE const &ud)
stlsoft::basic_shim_string< char > c_str_data_a (SYSTEMTIME const &t, bool bMilliseconds)
stlsoft::basic_shim_string< char > c_str_data_a (SYSTEMTIME const &t)
stlsoft::basic_shim_string
< wchar_t > 
c_str_data_w (SYSTEMTIME const &t, bool bMilliseconds)
stlsoft::basic_shim_string
< wchar_t > 
c_str_data_w (SYSTEMTIME const &t)
stlsoft::basic_shim_string< TCHAR > c_str_data (SYSTEMTIME const &t, bool bMilliseconds)
stlsoft::basic_shim_string< TCHAR > c_str_data (SYSTEMTIME const &t)
stlsoft::basic_shim_string< char > c_str_data_a (FILETIME const &t, bool bMilliseconds)
stlsoft::basic_shim_string< char > c_str_data_a (FILETIME const &t)
stlsoft::basic_shim_string
< wchar_t > 
c_str_data_w (FILETIME const &t, bool bMilliseconds)
stlsoft::basic_shim_string
< wchar_t > 
c_str_data_w (FILETIME const &t)
stlsoft::basic_shim_string< TCHAR > c_str_data (FILETIME const &t, bool bMilliseconds)
stlsoft::basic_shim_string< TCHAR > c_str_data (FILETIME const &t)
stlsoft::basic_shim_string< char > c_str_data_a (UDATE const &t, bool bMilliseconds)
stlsoft::basic_shim_string< char > c_str_data_a (UDATE const &t)
stlsoft::basic_shim_string
< wchar_t > 
c_str_data_w (UDATE const &t, bool bMilliseconds)
stlsoft::basic_shim_string
< wchar_t > 
c_str_data_w (UDATE const &t)
stlsoft::basic_shim_string< TCHAR > c_str_data (UDATE const &t, bool bMilliseconds)
stlsoft::basic_shim_string< TCHAR > c_str_data (UDATE const &t)
stlsoft::basic_shim_string< char > c_str_ptr_null_a (SYSTEMTIME const &t, bool bMilliseconds)
stlsoft::basic_shim_string< char > c_str_ptr_null_a (SYSTEMTIME const &t)
stlsoft::basic_shim_string
< wchar_t > 
c_str_ptr_null_w (SYSTEMTIME const &t, bool bMilliseconds)
stlsoft::basic_shim_string
< wchar_t > 
c_str_ptr_null_w (SYSTEMTIME const &t)
stlsoft::basic_shim_string< TCHAR > c_str_ptr_null (SYSTEMTIME const &t, bool bMilliseconds)
stlsoft::basic_shim_string< TCHAR > c_str_ptr_null (SYSTEMTIME const &t)
stlsoft::basic_shim_string< char > c_str_ptr_null_a (FILETIME const &t, bool bMilliseconds)
stlsoft::basic_shim_string< char > c_str_ptr_null_a (FILETIME const &t)
stlsoft::basic_shim_string
< wchar_t > 
c_str_ptr_null_w (FILETIME const &t, bool bMilliseconds)
stlsoft::basic_shim_string
< wchar_t > 
c_str_ptr_null_w (FILETIME const &t)
stlsoft::basic_shim_string< TCHAR > c_str_ptr_null (FILETIME const &t, bool bMilliseconds)
stlsoft::basic_shim_string< TCHAR > c_str_ptr_null (FILETIME const &t)
stlsoft::basic_shim_string< char > c_str_ptr_null_a (UDATE const &t, bool bMilliseconds)
stlsoft::basic_shim_string< char > c_str_ptr_null_a (UDATE const &t)
stlsoft::basic_shim_string
< wchar_t > 
c_str_ptr_null_w (UDATE const &t, bool bMilliseconds)
stlsoft::basic_shim_string
< wchar_t > 
c_str_ptr_null_w (UDATE const &t)
stlsoft::basic_shim_string< TCHAR > c_str_ptr_null (UDATE const &t, bool bMilliseconds)
stlsoft::basic_shim_string< TCHAR > c_str_ptr_null (UDATE const &t)
size_t c_str_len_a (SYSTEMTIME const &t, bool bMilliseconds)
size_t c_str_len_a (SYSTEMTIME const &t)
size_t c_str_len_w (SYSTEMTIME const &t, bool bMilliseconds)
size_t c_str_len_w (SYSTEMTIME const &t)
size_t c_str_len (SYSTEMTIME const &t, bool bMilliseconds)
size_t c_str_len (SYSTEMTIME const &t)
size_t c_str_len_a (FILETIME const &t, bool bMilliseconds)
size_t c_str_len_a (FILETIME const &t)
size_t c_str_len_w (FILETIME const &t, bool bMilliseconds)
size_t c_str_len_w (FILETIME const &t)
size_t c_str_len (FILETIME const &t, bool bMilliseconds)
size_t c_str_len (FILETIME const &t)
size_t c_str_len_a (UDATE const &t, bool bMilliseconds)
size_t c_str_len_a (UDATE const &t)
size_t c_str_len_w (UDATE const &t, bool bMilliseconds)
size_t c_str_len_w (UDATE const &t)
size_t c_str_len (UDATE const &t, bool bMilliseconds)
size_t c_str_len (UDATE const &t)
template<typename S>
S & operator<< (S &s, SYSTEMTIME const &st)
 An inserter function for SYSTEMTIME into output streams.
template<typename S>
S & operator<< (S &s, FILETIME const &ft)
 An inserter function for FILETIME into output streams.
template<typename S>
S & operator<< (S &s, UDATE const &ud)
 An inserter function for UDATE into output streams.
HKEY get_HKEY (HKEY h)
 Access the HKEY of the given HKEY.
HWND get_HWND (HWND h)
 Access the HWND of the given HWND.
HANDLE get_kernel_handle (HANDLE h)
 Degenerate form of the WinSTL get_kernel_handle() shim, which simply returns the handle it's given.
HANDLE get_synch_handle (HANDLE h)
 Degenerate form of the WinSTL get_synch_handle() shim, which simply returns the handle it's given.
DATE const & to_DATE (DATE const &rhs) throw ()
 Degenerate case of the group__concept__shim__time_conversion__to_DATE.
DATE to_DATE (FILETIME const &rhs)
 Converts an instance of FILETIME to an instance of DATE.
DATE to_DATE (SYSTEMTIME const &rhs)
 Converts an instance of SYSTEMTIME to an instance of DATE, using the Windows API function VarUdateFromDate().
DATE to_DATE (UDATE const &rhs)
 Converts an instance of UDATE to an instance of DATE.
const FILETIME to_FILETIME (DATE const &rhs)
 Converts an instance of DATE to an instance of FILETIME.
FILETIME const & to_FILETIME (FILETIME const &rhs) throw ()
 Degenerate case of the winstl::to_FILETIME Time Conversion Shim.
const FILETIME to_FILETIME (SYSTEMTIME const &rhs)
 Converts an instance of SYSTEMTIME to an instance of FILETIME, using the Windows API function SystemTimeToFileTime().
const FILETIME to_FILETIME (UDATE const &rhs)
 Converts an instance of UDATE to an instance of FILETIME.
const SYSTEMTIME to_SYSTEMTIME (DATE const &rhs)
 Converts an instance of DATE to an instance of SYSTEMTIME, using the Windows API function VarUdateFromDate().
const SYSTEMTIME to_SYSTEMTIME (FILETIME const &rhs)
 Converts an instance of FILETIME to an instance of SYSTEMTIME, using the Windows API function FileTimeToSystemTime().
SYSTEMTIME const & to_SYSTEMTIME (SYSTEMTIME const &rhs)
 Degenerate case of the winstl::to_SYSTEMTIME Time Conversion Shim.
SYSTEMTIME const & to_SYSTEMTIME (UDATE const &rhs)
 Degenerate case of the winstl::to_SYSTEMTIME Time Conversion Shim.
 WINSTL_ATOMIC_FNS_DECL_ (atomic_int_t) atomic_preincrement_up(atomic_int_t volatile *pl)
 WINSTL_ATOMIC_FNS_DECL_ (void) atomic_increment_up(atomic_int_t volatile *pl)
STLSOFT_INLINE atomic_int_t atomic_preadd_up (atomic_int_t volatile *pl, atomic_int_t n)
STLSOFT_INLINE void atomic_increment_smp (atomic_int_t volatile *pl)
STLSOFT_INLINE void atomic_decrement_smp (atomic_int_t volatile *pl)
STLSOFT_INLINE atomic_int_t atomic_preadd_smp (atomic_int_t volatile *pl, atomic_int_t n)
STLSOFT_INLINE atomic_int_t atomic_preadd (atomic_int_t volatile *pl, atomic_int_t n)
HANDLE get_synch_handle (event &ev)
 Overload of the form of the winstl::get_synch_handle() shim for the winstl::event type.
HANDLE get_kernel_handle (event &ev)
 Overload of the form of the winstl::get_kernel_handle() shim for the winstl::event type.
HANDLE get_synch_handle (process_mutex &mx)
 Overload of the form of the winstl::get_synch_handle() shim for the winstl::process_mutex type.
HANDLE get_kernel_handle (process_mutex &mx)
 Overload of the form of the winstl::get_kernel_handle() shim for the winstl::process_mutex type.
HANDLE get_synch_handle (semaphore &sem)
 Overload of the form of the winstl::get_synch_handle() shim for the winstl::semaphore type.
HANDLE get_kernel_handle (semaphore &sem)
 Overload of the form of the winstl::get_kernel_handle() shim for the winstl::semaphore type.
int micro_sleep (ws_uint_t microseconds)
 [C++ only] Puts the calling thread to sleep for the given number of microseconds.
DWORD w4mo_helper_8 (HANDLE h0, HANDLE h1, HANDLE h2, HANDLE h3, HANDLE h4, HANDLE h5, HANDLE h6, HANDLE h7, bool bWaitAll, ws_dword_t timeout)
 [IMPLEMENTATION]
template<typename L0, typename L1, typename L2, typename L3, typename L4, typename L5, typename L6, typename L7>
DWORD wait_for_multiple_objects (L0 &l0, L1 &l1, L2 &l2, L3 &l3, L4 &l4, L5 &l5, L6 &l6, L7 &l7, bool bWaitAll, ws_dword_t timeout)
 Execute wait for 8 synchronisation objects of heterogeneous types.
template<typename L0, typename L1, typename L2, typename L3, typename L4, typename L5, typename L6>
DWORD wait_for_multiple_objects (L0 &l0, L1 &l1, L2 &l2, L3 &l3, L4 &l4, L5 &l5, L6 &l6, bool bWaitAll, ws_dword_t timeout)
 Execute wait for 7 synchronisation objects of heterogeneous types.
template<typename L0, typename L1, typename L2, typename L3, typename L4, typename L5>
DWORD wait_for_multiple_objects (L0 &l0, L1 &l1, L2 &l2, L3 &l3, L4 &l4, L5 &l5, bool bWaitAll, ws_dword_t timeout)
 Execute wait for 6 synchronisation objects of heterogeneous types.
template<typename L0, typename L1, typename L2, typename L3, typename L4>
DWORD wait_for_multiple_objects (L0 &l0, L1 &l1, L2 &l2, L3 &l3, L4 &l4, bool bWaitAll, ws_dword_t timeout)
 Execute wait for 5 synchronisation objects of heterogeneous types.
template<typename L0, typename L1, typename L2, typename L3>
DWORD wait_for_multiple_objects (L0 &l0, L1 &l1, L2 &l2, L3 &l3, bool bWaitAll, ws_dword_t timeout)
 Execute wait for 4 synchronisation objects of heterogeneous types.
template<typename L0, typename L1, typename L2>
DWORD wait_for_multiple_objects (L0 &l0, L1 &l1, L2 &l2, bool bWaitAll, ws_dword_t timeout)
 Execute wait for 3 synchronisation objects of heterogeneous types.
template<typename L0, typename L1>
DWORD wait_for_multiple_objects (L0 &l0, L1 &l1, bool bWaitAll, ws_dword_t timeout)
 Execute wait for 2 synchronisation objects of heterogeneous types.
size_t get_console_width ()
 Evalutes the current width of the console.
HWND get_console_window (void)
 Returns the window handle of the current console, or NULL if it cannot be found.
ws_sint_t compare (FILETIME const &lhs, FILETIME const &rhs)
ws_sint_t compare (FILETIME const &lhs, SYSTEMTIME const &rhs)
ws_sint_t compare (SYSTEMTIME const &lhs, FILETIME const &rhs)
ws_sint_t compare (SYSTEMTIME const &lhs, SYSTEMTIME const &rhs)
bool operator== (FILETIME const &lhs, FILETIME const &rhs)
bool operator== (FILETIME const &lhs, SYSTEMTIME const &rhs)
bool operator== (SYSTEMTIME const &lhs, FILETIME const &rhs)
bool operator== (SYSTEMTIME const &lhs, SYSTEMTIME const &rhs)
bool operator!= (FILETIME const &lhs, FILETIME const &rhs)
bool operator!= (FILETIME const &lhs, SYSTEMTIME const &rhs)
bool operator!= (SYSTEMTIME const &lhs, FILETIME const &rhs)
bool operator!= (SYSTEMTIME const &lhs, SYSTEMTIME const &rhs)
bool operator< (FILETIME const &lhs, FILETIME const &rhs)
bool operator< (FILETIME const &lhs, SYSTEMTIME const &rhs)
bool operator< (SYSTEMTIME const &lhs, FILETIME const &rhs)
bool operator< (SYSTEMTIME const &lhs, SYSTEMTIME const &rhs)
bool operator> (FILETIME const &lhs, FILETIME const &rhs)
bool operator> (FILETIME const &lhs, SYSTEMTIME const &rhs)
bool operator> (SYSTEMTIME const &lhs, FILETIME const &rhs)
bool operator> (SYSTEMTIME const &lhs, SYSTEMTIME const &rhs)
bool operator<= (FILETIME const &lhs, FILETIME const &rhs)
bool operator<= (FILETIME const &lhs, SYSTEMTIME const &rhs)
bool operator<= (SYSTEMTIME const &lhs, FILETIME const &rhs)
bool operator<= (SYSTEMTIME const &lhs, SYSTEMTIME const &rhs)
bool operator>= (FILETIME const &lhs, FILETIME const &rhs)
bool operator>= (FILETIME const &lhs, SYSTEMTIME const &rhs)
bool operator>= (SYSTEMTIME const &lhs, FILETIME const &rhs)
bool operator>= (SYSTEMTIME const &lhs, SYSTEMTIME const &rhs)
template<typename C>
int __stdcall GetTimeFormat_ms_ (LCID locale, DWORD dwFlags, CONST SYSTEMTIME *lpTime, C const *lpFormat, C *lpTimeStr, const int cchTime)
int __stdcall GetTimeFormat_msA (LCID locale, DWORD dwFlags, CONST SYSTEMTIME *lpTime, char const *lpFormat, char *lpTimeStr, int cchTime)
 Analogue to the Win32 API GetTimeFormat(), but also provides milliseconds as part of the time picture.
int __stdcall GetTimeFormat_msW (LCID locale, DWORD dwFlags, CONST SYSTEMTIME *lpTime, wchar_t const *lpFormat, wchar_t *lpTimeStr, int cchTime)
DWORD get_pid (HEAPLIST32 const &hl)
 Attribute shim for retrieving the process id associated with the HEAPLIST32 instance.
DWORD get_pid (MODULEENTRY32 const &me)
 Attribute shim for retrieving the process id associated with the MODULEENTRY32 instance.
DWORD get_pid (PROCESSENTRY32 const &pe)
 Attribute shim for retrieving the process id associated with the PROCESSENTRY32 instance.
DWORD get_pid (THREADENTRY32 const &te)
 Attribute shim for retrieving the process id associated with the THREADENTRY32 instance.
template<typename T>
void zero_struct (T &t)
 Initialises all elements of a structure to zero.
template<typename T>
void init_struct (T &t)
 Initialises all members of a structure to zero, and sets the size member to the size of the structure.
HWND CreateWindowExA (DWORD dwExStyle, LPCSTR lpClassName, LPCSTR lpWindowName, DWORD dwStyle, int X, int Y, int nWidth, int nHeight, HWND hWndParent, HMENU hMenu, HINSTANCE hInstance, LPVOID lpParam)
HWND CreateWindowExW (DWORD dwExStyle, LPCWSTR lpClassName, LPCWSTR lpWindowName, DWORD dwStyle, int X, int Y, int nWidth, int nHeight, HWND hWndParent, HMENU hMenu, HINSTANCE hInstance, LPVOID lpParam)
HFONT get_window_font (HWND hwnd)
 Gets the font associated with the window.
void set_window_font (HWND hwnd, HFONT hfont, bool bRedraw=true)
 Sets the window's font.
ws_sptrint_t GetStyle (HWND h)
 Gets the style of the window.
ws_sptrint_t GetExStyle (HWND h)
 Gets the extended style of the window.
ws_sptrint_t SetStyle (HWND h, ws_sptrint_t s)
 Sets the style of the window.
ws_sptrint_t SetExStyle (HWND h, ws_sptrint_t x)
 Sets the extended style of the window.
ws_sptrint_t ModifyStyle (HWND h, ws_sptrint_t sRem, ws_sptrint_t sAdd)
 Modifies the style of the window.
ws_sptrint_t ModifyExStyle (HWND h, ws_sptrint_t sRem, ws_sptrint_t sAdd)
 Modifies the extended style of the window.
bool IsWindowClass (HWND hwnd, char const *name)
 Tests whether the given window has the given window class.
bool IsWindowClass (HWND hwnd, wchar_t const *name)
 Tests whether the given window has the given window class.
void EnableDlgItem (HWND hwnd, int id, bool bEnable)
 Enables/disable a dialog item.
bool IsDlgItemEnabled (HWND hwnd, int id)
 Elicits the enable status of a dialog item.
int GetDlgItemTextLength (HWND hwnd, int id)
 Gets the text length of a dialog item's window contents.
HINSTANCE GetWindowInstance (HWND hwnd)
 Gets the HINSTANCE associated with a given window.
HICON set_window_icon (HWND hwnd, int iconType, HICON hicon)
HICON set_window_icon (HWND hwnd, int iconType, HINSTANCE hinst, LPCTSTR iconName)
HICON set_window_icon (HWND hwnd, int iconType, HINSTANCE hinst, int iconId)
HWND FindFirstChildById (HWND hwndParent, int id)
 Finds the first descendant window with the given id.
size_t get_object (HBITMAP h, BITMAP &desc)
size_t get_object (HBITMAP h, DIBSECTION &desc)
size_t get_object (HPEN h, EXTLOGPEN &desc)
size_t get_object (HPEN h, LOGPEN &desc)
size_t get_object (HBRUSH h, LOGBRUSH &desc)
size_t get_object (HFONT h, LOGFONT &desc)
template<typename D, typename H>
get_object_helper (H h)
BITMAP get_BITMAP (HBITMAP h)
DIBSECTION get_DIBSECTION (HBITMAP h)
EXTLOGPEN get_EXTLOGPEN (HPEN h)
LOGPEN get_LOGPEN (HPEN h)
LOGBRUSH get_LOGBRUSH (HBRUSH h)
LOGFONT get_LOGFONT (HFONT h)
STLSOFT_INLINE BOOL winstl__IsMenuItemChecked (HMENU hmenu, WORD wID)
STLSOFT_INLINE BOOL winstl__SetMenuItemStateByIndex (HMENU hmenu, int i, UINT state)
STLSOFT_INLINE BOOL winstl__SetMenuItemStateById (HMENU hmenu, UINT id, UINT state)
BOOL IsMenuItemChecked (HMENU hmenu, WORD wID)
BOOL SetMenuItemStateByIndex (HMENU hmenu, int i, UINT state)
BOOL SetMenuItemStateById (HMENU hmenu, UINT id, UINT state)
STLSOFT_INLINE LRESULT winstl__SendMessageA (HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
STLSOFT_INLINE LRESULT winstl__SendMessageW (HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
STLSOFT_INLINE LRESULT winstl__SendMessage (HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
LRESULT SendMessageA (HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
LRESULT SendMessageW (HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
STLSOFT_INLINE ws_sint_t winstl__calc_SIZE_width (SIZE const *size)
STLSOFT_INLINE ws_sint_t winstl__calc_SIZE_height (SIZE const *size)
STLSOFT_INLINE ws_sint_t winstl__calc_RECT_width (RECT const *rect)
STLSOFT_INLINE ws_sint_t winstl__calc_RECT_height (RECT const *rect)
ws_sint_t calc_width (SIZE const &size)
 Calculates the width of a SIZE instance.
ws_sint_t calc_width (RECT const &rc)
 Calculates the width of a RECT instance.
ws_sint_t calc_height (SIZE const &size)
 Calculates the height of a SIZE instance.
ws_sint_t calc_height (RECT const &rc)
 Calculates the height of a RECT instance.
STLSOFT_INLINE TEXTMETRICA winstl__get_textmetrics_a (HDC hdc)
STLSOFT_INLINE TEXTMETRICW winstl__get_textmetrics_w (HDC hdc)
STLSOFT_INLINE TEXTMETRIC winstl__get_textmetrics (HDC hdc)
TEXTMETRICA get_textmetrics_a (HDC hdc)
TEXTMETRICW get_textmetrics_w (HDC hdc)
TEXTMETRIC get_textmetrics (HDC hdc)
TEXTMETRICA get_window_textmetrics_a (HWND hwnd)
TEXTMETRICW get_window_textmetrics_w (HWND hwnd)
TEXTMETRIC get_window_textmetrics (HWND hwnd)
TEXTMETRICA get_client_textmetrics_a (HWND hwnd)
TEXTMETRICW get_client_textmetrics_w (HWND hwnd)
TEXTMETRIC get_client_textmetrics (HWND hwnd)
WindowIdent GetWindowIdent (HWND hwnd)
template<typename T>
bool operator== (zorder_iterator_tmpl< T > const &lhs, zorder_iterator_tmpl< T > const &rhs)
template<typename T>
bool operator!= (zorder_iterator_tmpl< T > const &lhs, zorder_iterator_tmpl< T > const &rhs)
bool BOOL2bool (BOOL bVal)
 Safely converts a BOOL to a bool.
BOOL bool2BOOL (bool bVal)
 Safely converts a bool to a BOOL.
Invocators
These calling convention-specific functions perform the invocation of the given function pointer with the requisite arguments.

template<typename R>
dl_call_invoke_fastcall (dl_call_traits::entry_point_type fp)
template<typename R>
dl_call_invoke_stdcall (dl_call_traits::entry_point_type fp)
template<typename R, typename A0>
dl_call_invoke_fastcall (dl_call_traits::entry_point_type fp, A0 a0)
template<typename R, typename A0>
dl_call_invoke_stdcall (dl_call_traits::entry_point_type fp, A0 a0)
template<typename R, typename A0, typename A1>
dl_call_invoke_fastcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1)
template<typename R, typename A0, typename A1>
dl_call_invoke_stdcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1)
template<typename R, typename A0, typename A1, typename A2>
dl_call_invoke_fastcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2)
template<typename R, typename A0, typename A1, typename A2>
dl_call_invoke_stdcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2)
template<typename R, typename A0, typename A1, typename A2, typename A3>
dl_call_invoke_fastcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3)
template<typename R, typename A0, typename A1, typename A2, typename A3>
dl_call_invoke_stdcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4>
dl_call_invoke_fastcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4>
dl_call_invoke_stdcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5>
dl_call_invoke_fastcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5>
dl_call_invoke_stdcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6>
dl_call_invoke_fastcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6>
dl_call_invoke_stdcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7>
dl_call_invoke_fastcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7>
dl_call_invoke_stdcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8>
dl_call_invoke_fastcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8>
dl_call_invoke_stdcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9>
dl_call_invoke_fastcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9>
dl_call_invoke_stdcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10>
dl_call_invoke_fastcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10>
dl_call_invoke_stdcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11>
dl_call_invoke_fastcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11>
dl_call_invoke_stdcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12>
dl_call_invoke_fastcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12>
dl_call_invoke_stdcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13>
dl_call_invoke_fastcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13>
dl_call_invoke_stdcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14>
dl_call_invoke_fastcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14>
dl_call_invoke_stdcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15>
dl_call_invoke_fastcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15>
dl_call_invoke_stdcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16>
dl_call_invoke_fastcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16>
dl_call_invoke_stdcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17>
dl_call_invoke_fastcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17>
dl_call_invoke_stdcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18>
dl_call_invoke_fastcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18>
dl_call_invoke_stdcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19>
dl_call_invoke_fastcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19>
dl_call_invoke_stdcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20>
dl_call_invoke_fastcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20>
dl_call_invoke_stdcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21>
dl_call_invoke_fastcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21>
dl_call_invoke_stdcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22>
dl_call_invoke_fastcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22>
dl_call_invoke_stdcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23>
dl_call_invoke_fastcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23>
dl_call_invoke_stdcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24>
dl_call_invoke_fastcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24>
dl_call_invoke_stdcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25>
dl_call_invoke_fastcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25>
dl_call_invoke_stdcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26>
dl_call_invoke_fastcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25, A26 a26)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26>
dl_call_invoke_stdcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25, A26 a26)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27>
dl_call_invoke_fastcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25, A26 a26, A27 a27)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27>
dl_call_invoke_stdcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25, A26 a26, A27 a27)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27, typename A28>
dl_call_invoke_fastcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25, A26 a26, A27 a27, A28 a28)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27, typename A28>
dl_call_invoke_stdcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25, A26 a26, A27 a27, A28 a28)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27, typename A28, typename A29>
dl_call_invoke_fastcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25, A26 a26, A27 a27, A28 a28, A29 a29)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27, typename A28, typename A29>
dl_call_invoke_stdcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25, A26 a26, A27 a27, A28 a28, A29 a29)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27, typename A28, typename A29, typename A30>
dl_call_invoke_fastcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25, A26 a26, A27 a27, A28 a28, A29 a29, A30 a30)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27, typename A28, typename A29, typename A30>
dl_call_invoke_stdcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25, A26 a26, A27 a27, A28 a28, A29 a29, A30 a30)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27, typename A28, typename A29, typename A30, typename A31>
dl_call_invoke_fastcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25, A26 a26, A27 a27, A28 a28, A29 a29, A30 a30, A31 a31)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27, typename A28, typename A29, typename A30, typename A31>
dl_call_invoke_stdcall (dl_call_traits::entry_point_type fp, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25, A26 a26, A27 a27, A28 a28, A29 a29, A30 a30, A31 a31)
Dispatchers
These calling convention-agnostic functions dispatch the function to the appropriate invocator, with the requisite arguments.

template<typename R>
dl_call_dispatch_0 (dl_call_traits::entry_point_type fp, calling_convention::calling_convention cc)
template<typename R, typename A0>
dl_call_dispatch_1 (dl_call_traits::entry_point_type fp, calling_convention::calling_convention cc, A0 a0)
template<typename R, typename A0, typename A1>
dl_call_dispatch_2 (dl_call_traits::entry_point_type fp, calling_convention::calling_convention cc, A0 a0, A1 a1)
template<typename R, typename A0, typename A1, typename A2>
dl_call_dispatch_3 (dl_call_traits::entry_point_type fp, calling_convention::calling_convention cc, A0 a0, A1 a1, A2 a2)
template<typename R, typename A0, typename A1, typename A2, typename A3>
dl_call_dispatch_4 (dl_call_traits::entry_point_type fp, calling_convention::calling_convention cc, A0 a0, A1 a1, A2 a2, A3 a3)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4>
dl_call_dispatch_5 (dl_call_traits::entry_point_type fp, calling_convention::calling_convention cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5>
dl_call_dispatch_6 (dl_call_traits::entry_point_type fp, calling_convention::calling_convention cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6>
dl_call_dispatch_7 (dl_call_traits::entry_point_type fp, calling_convention::calling_convention cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7>
dl_call_dispatch_8 (dl_call_traits::entry_point_type fp, calling_convention::calling_convention cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8>
dl_call_dispatch_9 (dl_call_traits::entry_point_type fp, calling_convention::calling_convention cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9>
dl_call_dispatch_10 (dl_call_traits::entry_point_type fp, calling_convention::calling_convention cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10>
dl_call_dispatch_11 (dl_call_traits::entry_point_type fp, calling_convention::calling_convention cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11>
dl_call_dispatch_12 (dl_call_traits::entry_point_type fp, calling_convention::calling_convention cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12>
dl_call_dispatch_13 (dl_call_traits::entry_point_type fp, calling_convention::calling_convention cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13>
dl_call_dispatch_14 (dl_call_traits::entry_point_type fp, calling_convention::calling_convention cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14>
dl_call_dispatch_15 (dl_call_traits::entry_point_type fp, calling_convention::calling_convention cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15>
dl_call_dispatch_16 (dl_call_traits::entry_point_type fp, calling_convention::calling_convention cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16>
dl_call_dispatch_17 (dl_call_traits::entry_point_type fp, calling_convention::calling_convention cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17>
dl_call_dispatch_18 (dl_call_traits::entry_point_type fp, calling_convention::calling_convention cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18>
dl_call_dispatch_19 (dl_call_traits::entry_point_type fp, calling_convention::calling_convention cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19>
dl_call_dispatch_20 (dl_call_traits::entry_point_type fp, calling_convention::calling_convention cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20>
dl_call_dispatch_21 (dl_call_traits::entry_point_type fp, calling_convention::calling_convention cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21>
dl_call_dispatch_22 (dl_call_traits::entry_point_type fp, calling_convention::calling_convention cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22>
dl_call_dispatch_23 (dl_call_traits::entry_point_type fp, calling_convention::calling_convention cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23>
dl_call_dispatch_24 (dl_call_traits::entry_point_type fp, calling_convention::calling_convention cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24>
dl_call_dispatch_25 (dl_call_traits::entry_point_type fp, calling_convention::calling_convention cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25>
dl_call_dispatch_26 (dl_call_traits::entry_point_type fp, calling_convention::calling_convention cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26>
dl_call_dispatch_27 (dl_call_traits::entry_point_type fp, calling_convention::calling_convention cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25, A26 a26)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27>
dl_call_dispatch_28 (dl_call_traits::entry_point_type fp, calling_convention::calling_convention cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25, A26 a26, A27 a27)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27, typename A28>
dl_call_dispatch_29 (dl_call_traits::entry_point_type fp, calling_convention::calling_convention cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25, A26 a26, A27 a27, A28 a28)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27, typename A28, typename A29>
dl_call_dispatch_30 (dl_call_traits::entry_point_type fp, calling_convention::calling_convention cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25, A26 a26, A27 a27, A28 a28, A29 a29)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27, typename A28, typename A29, typename A30>
dl_call_dispatch_31 (dl_call_traits::entry_point_type fp, calling_convention::calling_convention cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25, A26 a26, A27 a27, A28 a28, A29 a29, A30 a30)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27, typename A28, typename A29, typename A30, typename A31>
dl_call_dispatch_32 (dl_call_traits::entry_point_type fp, calling_convention::calling_convention cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25, A26 a26, A27 a27, A28 a28, A29 a29, A30 a30, A31 a31)
Lookup-ers
These calling convention-agnostic functions look up the symbol from the library handle, and then call the dispatcher.

template<typename R>
dl_call_lookup_0 (dl_call_traits::library_handle_type hinst, char const *functionName, calling_convention::calling_convention const &cc)
template<typename R, typename A0>
dl_call_lookup_1 (dl_call_traits::library_handle_type hinst, char const *functionName, calling_convention::calling_convention const &cc, A0 a0)
template<typename R, typename A0, typename A1>
dl_call_lookup_2 (dl_call_traits::library_handle_type hinst, char const *functionName, calling_convention::calling_convention const &cc, A0 a0, A1 a1)
template<typename R, typename A0, typename A1, typename A2>
dl_call_lookup_3 (dl_call_traits::library_handle_type hinst, char const *functionName, calling_convention::calling_convention const &cc, A0 a0, A1 a1, A2 a2)
template<typename R, typename A0, typename A1, typename A2, typename A3>
dl_call_lookup_4 (dl_call_traits::library_handle_type hinst, char const *functionName, calling_convention::calling_convention const &cc, A0 a0, A1 a1, A2 a2, A3 a3)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4>
dl_call_lookup_5 (dl_call_traits::library_handle_type hinst, char const *functionName, calling_convention::calling_convention const &cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5>
dl_call_lookup_6 (dl_call_traits::library_handle_type hinst, char const *functionName, calling_convention::calling_convention const &cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6>
dl_call_lookup_7 (dl_call_traits::library_handle_type hinst, char const *functionName, calling_convention::calling_convention const &cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7>
dl_call_lookup_8 (dl_call_traits::library_handle_type hinst, char const *functionName, calling_convention::calling_convention const &cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8>
dl_call_lookup_9 (dl_call_traits::library_handle_type hinst, char const *functionName, calling_convention::calling_convention const &cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9>
dl_call_lookup_10 (dl_call_traits::library_handle_type hinst, char const *functionName, calling_convention::calling_convention const &cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10>
dl_call_lookup_11 (dl_call_traits::library_handle_type hinst, char const *functionName, calling_convention::calling_convention const &cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11>
dl_call_lookup_12 (dl_call_traits::library_handle_type hinst, char const *functionName, calling_convention::calling_convention const &cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12>
dl_call_lookup_13 (dl_call_traits::library_handle_type hinst, char const *functionName, calling_convention::calling_convention const &cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13>
dl_call_lookup_14 (dl_call_traits::library_handle_type hinst, char const *functionName, calling_convention::calling_convention const &cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14>
dl_call_lookup_15 (dl_call_traits::library_handle_type hinst, char const *functionName, calling_convention::calling_convention const &cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15>
dl_call_lookup_16 (dl_call_traits::library_handle_type hinst, char const *functionName, calling_convention::calling_convention const &cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16>
dl_call_lookup_17 (dl_call_traits::library_handle_type hinst, char const *functionName, calling_convention::calling_convention const &cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17>
dl_call_lookup_18 (dl_call_traits::library_handle_type hinst, char const *functionName, calling_convention::calling_convention const &cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18>
dl_call_lookup_19 (dl_call_traits::library_handle_type hinst, char const *functionName, calling_convention::calling_convention const &cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19>
dl_call_lookup_20 (dl_call_traits::library_handle_type hinst, char const *functionName, calling_convention::calling_convention const &cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20>
dl_call_lookup_21 (dl_call_traits::library_handle_type hinst, char const *functionName, calling_convention::calling_convention const &cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21>
dl_call_lookup_22 (dl_call_traits::library_handle_type hinst, char const *functionName, calling_convention::calling_convention const &cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22>
dl_call_lookup_23 (dl_call_traits::library_handle_type hinst, char const *functionName, calling_convention::calling_convention const &cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23>
dl_call_lookup_24 (dl_call_traits::library_handle_type hinst, char const *functionName, calling_convention::calling_convention const &cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24>
dl_call_lookup_25 (dl_call_traits::library_handle_type hinst, char const *functionName, calling_convention::calling_convention const &cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25>
dl_call_lookup_26 (dl_call_traits::library_handle_type hinst, char const *functionName, calling_convention::calling_convention const &cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26>
dl_call_lookup_27 (dl_call_traits::library_handle_type hinst, char const *functionName, calling_convention::calling_convention const &cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25, A26 a26)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27>
dl_call_lookup_28 (dl_call_traits::library_handle_type hinst, char const *functionName, calling_convention::calling_convention const &cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25, A26 a26, A27 a27)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27, typename A28>
dl_call_lookup_29 (dl_call_traits::library_handle_type hinst, char const *functionName, calling_convention::calling_convention const &cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25, A26 a26, A27 a27, A28 a28)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27, typename A28, typename A29>
dl_call_lookup_30 (dl_call_traits::library_handle_type hinst, char const *functionName, calling_convention::calling_convention const &cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25, A26 a26, A27 a27, A28 a28, A29 a29)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27, typename A28, typename A29, typename A30>
dl_call_lookup_31 (dl_call_traits::library_handle_type hinst, char const *functionName, calling_convention::calling_convention const &cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25, A26 a26, A27 a27, A28 a28, A29 a29, A30 a30)
template<typename R, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27, typename A28, typename A29, typename A30, typename A31>
dl_call_lookup_32 (dl_call_traits::library_handle_type hinst, char const *functionName, calling_convention::calling_convention const &cc, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25, A26 a26, A27 a27, A28 a28, A29 a29, A30 a30, A31 a31)
Module-ers
These calling convention-agnostic functions acquire the instance handle for the library, and then call the lookup-ers.

template<typename R, typename FD>
dl_call_MOD (dl_call_traits::library_is_handle, dl_call_traits::library_handle_type hinst, FD const &fd)
template<typename R, typename S, typename FD>
dl_call_MOD (dl_call_traits::library_is_not_handle, S const &library, FD const &fd)
template<typename R, typename FD, typename A0>
dl_call_MOD (dl_call_traits::library_is_handle, dl_call_traits::library_handle_type hinst, FD const &fd, A0 a0)
template<typename R, typename S, typename FD, typename A0>
dl_call_MOD (dl_call_traits::library_is_not_handle, S const &library, FD const &fd, A0 a0)
template<typename R, typename FD, typename A0, typename A1>
dl_call_MOD (dl_call_traits::library_is_handle, dl_call_traits::library_handle_type hinst, FD const &fd, A0 a0, A1 a1)
template<typename R, typename S, typename FD, typename A0, typename A1>
dl_call_MOD (dl_call_traits::library_is_not_handle, S const &library, FD const &fd, A0 a0, A1 a1)
template<typename R, typename FD, typename A0, typename A1, typename A2>
dl_call_MOD (dl_call_traits::library_is_handle, dl_call_traits::library_handle_type hinst, FD const &fd, A0 a0, A1 a1, A2 a2)
template<typename R, typename S, typename FD, typename A0, typename A1, typename A2>
dl_call_MOD (dl_call_traits::library_is_not_handle, S const &library, FD const &fd, A0 a0, A1 a1, A2 a2)
template<typename R, typename FD, typename A0, typename A1, typename A2, typename A3>
dl_call_MOD (dl_call_traits::library_is_handle, dl_call_traits::library_handle_type hinst, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3)
template<typename R, typename S, typename FD, typename A0, typename A1, typename A2, typename A3>
dl_call_MOD (dl_call_traits::library_is_not_handle, S const &library, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3)
template<typename R, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4>
dl_call_MOD (dl_call_traits::library_is_handle, dl_call_traits::library_handle_type hinst, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4)
template<typename R, typename S, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4>
dl_call_MOD (dl_call_traits::library_is_not_handle, S const &library, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4)
template<typename R, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5>
dl_call_MOD (dl_call_traits::library_is_handle, dl_call_traits::library_handle_type hinst, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5)
template<typename R, typename S, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5>
dl_call_MOD (dl_call_traits::library_is_not_handle, S const &library, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5)
template<typename R, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6>
dl_call_MOD (dl_call_traits::library_is_handle, dl_call_traits::library_handle_type hinst, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6)
template<typename R, typename S, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6>
dl_call_MOD (dl_call_traits::library_is_not_handle, S const &library, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6)
template<typename R, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7>
dl_call_MOD (dl_call_traits::library_is_handle, dl_call_traits::library_handle_type hinst, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7)
template<typename R, typename S, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7>
dl_call_MOD (dl_call_traits::library_is_not_handle, S const &library, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7)
template<typename R, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8>
dl_call_MOD (dl_call_traits::library_is_handle, dl_call_traits::library_handle_type hinst, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8)
template<typename R, typename S, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8>
dl_call_MOD (dl_call_traits::library_is_not_handle, S const &library, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8)
template<typename R, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9>
dl_call_MOD (dl_call_traits::library_is_handle, dl_call_traits::library_handle_type hinst, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9)
template<typename R, typename S, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9>
dl_call_MOD (dl_call_traits::library_is_not_handle, S const &library, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9)
template<typename R, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10>
dl_call_MOD (dl_call_traits::library_is_handle, dl_call_traits::library_handle_type hinst, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10)
template<typename R, typename S, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10>
dl_call_MOD (dl_call_traits::library_is_not_handle, S const &library, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10)
template<typename R, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11>
dl_call_MOD (dl_call_traits::library_is_handle, dl_call_traits::library_handle_type hinst, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11)
template<typename R, typename S, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11>
dl_call_MOD (dl_call_traits::library_is_not_handle, S const &library, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11)
template<typename R, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12>
dl_call_MOD (dl_call_traits::library_is_handle, dl_call_traits::library_handle_type hinst, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12)
template<typename R, typename S, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12>
dl_call_MOD (dl_call_traits::library_is_not_handle, S const &library, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12)
template<typename R, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13>
dl_call_MOD (dl_call_traits::library_is_handle, dl_call_traits::library_handle_type hinst, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13)
template<typename R, typename S, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13>
dl_call_MOD (dl_call_traits::library_is_not_handle, S const &library, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13)
template<typename R, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14>
dl_call_MOD (dl_call_traits::library_is_handle, dl_call_traits::library_handle_type hinst, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14)
template<typename R, typename S, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14>
dl_call_MOD (dl_call_traits::library_is_not_handle, S const &library, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14)
template<typename R, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15>
dl_call_MOD (dl_call_traits::library_is_handle, dl_call_traits::library_handle_type hinst, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15)
template<typename R, typename S, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15>
dl_call_MOD (dl_call_traits::library_is_not_handle, S const &library, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15)
template<typename R, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16>
dl_call_MOD (dl_call_traits::library_is_handle, dl_call_traits::library_handle_type hinst, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16)
template<typename R, typename S, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16>
dl_call_MOD (dl_call_traits::library_is_not_handle, S const &library, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16)
template<typename R, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17>
dl_call_MOD (dl_call_traits::library_is_handle, dl_call_traits::library_handle_type hinst, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17)
template<typename R, typename S, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17>
dl_call_MOD (dl_call_traits::library_is_not_handle, S const &library, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17)
template<typename R, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18>
dl_call_MOD (dl_call_traits::library_is_handle, dl_call_traits::library_handle_type hinst, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18)
template<typename R, typename S, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18>
dl_call_MOD (dl_call_traits::library_is_not_handle, S const &library, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18)
template<typename R, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19>
dl_call_MOD (dl_call_traits::library_is_handle, dl_call_traits::library_handle_type hinst, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19)
template<typename R, typename S, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19>
dl_call_MOD (dl_call_traits::library_is_not_handle, S const &library, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19)
template<typename R, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20>
dl_call_MOD (dl_call_traits::library_is_handle, dl_call_traits::library_handle_type hinst, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20)
template<typename R, typename S, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20>
dl_call_MOD (dl_call_traits::library_is_not_handle, S const &library, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20)
template<typename R, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21>
dl_call_MOD (dl_call_traits::library_is_handle, dl_call_traits::library_handle_type hinst, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21)
template<typename R, typename S, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21>
dl_call_MOD (dl_call_traits::library_is_not_handle, S const &library, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21)
template<typename R, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22>
dl_call_MOD (dl_call_traits::library_is_handle, dl_call_traits::library_handle_type hinst, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22)
template<typename R, typename S, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22>
dl_call_MOD (dl_call_traits::library_is_not_handle, S const &library, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22)
template<typename R, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23>
dl_call_MOD (dl_call_traits::library_is_handle, dl_call_traits::library_handle_type hinst, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23)
template<typename R, typename S, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23>
dl_call_MOD (dl_call_traits::library_is_not_handle, S const &library, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23)
template<typename R, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24>
dl_call_MOD (dl_call_traits::library_is_handle, dl_call_traits::library_handle_type hinst, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24)
template<typename R, typename S, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24>
dl_call_MOD (dl_call_traits::library_is_not_handle, S const &library, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24)
template<typename R, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25>
dl_call_MOD (dl_call_traits::library_is_handle, dl_call_traits::library_handle_type hinst, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25)
template<typename R, typename S, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25>
dl_call_MOD (dl_call_traits::library_is_not_handle, S const &library, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25)
template<typename R, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26>
dl_call_MOD (dl_call_traits::library_is_handle, dl_call_traits::library_handle_type hinst, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25, A26 a26)
template<typename R, typename S, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26>
dl_call_MOD (dl_call_traits::library_is_not_handle, S const &library, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25, A26 a26)
template<typename R, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27>
dl_call_MOD (dl_call_traits::library_is_handle, dl_call_traits::library_handle_type hinst, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25, A26 a26, A27 a27)
template<typename R, typename S, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27>
dl_call_MOD (dl_call_traits::library_is_not_handle, S const &library, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25, A26 a26, A27 a27)
template<typename R, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27, typename A28>
dl_call_MOD (dl_call_traits::library_is_handle, dl_call_traits::library_handle_type hinst, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25, A26 a26, A27 a27, A28 a28)
template<typename R, typename S, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27, typename A28>
dl_call_MOD (dl_call_traits::library_is_not_handle, S const &library, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25, A26 a26, A27 a27, A28 a28)
template<typename R, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27, typename A28, typename A29>
dl_call_MOD (dl_call_traits::library_is_handle, dl_call_traits::library_handle_type hinst, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25, A26 a26, A27 a27, A28 a28, A29 a29)
template<typename R, typename S, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27, typename A28, typename A29>
dl_call_MOD (dl_call_traits::library_is_not_handle, S const &library, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25, A26 a26, A27 a27, A28 a28, A29 a29)
template<typename R, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27, typename A28, typename A29, typename A30>
dl_call_MOD (dl_call_traits::library_is_handle, dl_call_traits::library_handle_type hinst, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25, A26 a26, A27 a27, A28 a28, A29 a29, A30 a30)
template<typename R, typename S, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27, typename A28, typename A29, typename A30>
dl_call_MOD (dl_call_traits::library_is_not_handle, S const &library, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25, A26 a26, A27 a27, A28 a28, A29 a29, A30 a30)
template<typename R, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27, typename A28, typename A29, typename A30, typename A31>
dl_call_MOD (dl_call_traits::library_is_handle, dl_call_traits::library_handle_type hinst, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25, A26 a26, A27 a27, A28 a28, A29 a29, A30 a30, A31 a31)
template<typename R, typename S, typename FD, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27, typename A28, typename A29, typename A30, typename A31>
dl_call_MOD (dl_call_traits::library_is_not_handle, S const &library, FD const &fd, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, A14 a14, A15 a15, A16 a16, A17 a17, A18 a18, A19 a19, A20 a20, A21 a21, A22 a22, A23 a23, A24 a24, A25 a25, A26 a26, A27 a27, A28 a28, A29 a29, A30 a30, A31 a31)

Variables

dl_call_traits::is_not_fd test_fd_ (...)
const size_t CCH_REG_API_AUTO_BUFFER = 512
 Number of characters in internal buffer of auto_buffer used throughout the Registry library.
atomic_int_t n
const COLORREF white = RGB(255, 255, 255)
const COLORREF black = RGB( 0, 0, 0)
const COLORREF darkBlue = RGB( 0, 0, 128)
const COLORREF darkGreen = RGB( 0, 128, 0)
const COLORREF blueGreen = RGB( 0, 128, 128)
const COLORREF brown = RGB(128, 0, 0)
const COLORREF olive = RGB(128, 128, 0)
const COLORREF purple = RGB(128, 0, 128)
const COLORREF darkGrey = RGB(128, 128, 128)
const COLORREF lightGrey = RGB(192, 192, 192)
const COLORREF blue = RGB( 0, 0, 255)
const COLORREF green = RGB( 0, 255, 0)
const COLORREF cyan = RGB( 0, 255, 255)
const COLORREF red = RGB(255, 0, 0)
const COLORREF yellow = RGB(255, 255, 0)
const COLORREF magenta = RGB(255, 0, 255)
const COLORREF darkblue = RGB( 0, 0, 128)
const COLORREF darkgreen = RGB( 0, 128, 0)
const COLORREF bluegreen = RGB( 0, 128, 128)
const COLORREF darkgrey = RGB(128, 128, 128)
const COLORREF lightgrey = RGB(192, 192, 192)
const size_t CONST_NT_MAX_PATH = WINSTL_CONST_NT_MAX_PATH
 C++ constant equivalent to WINSTL_CONST_NT_MAX_PATH.
const size_t CONST_MAX_PATH = WINSTL_CONST_MAX_PATH
 C++ constant equivalent to WINSTL_CONST_MAX_PATH.


Typedef Documentation

typedef bool bool_t

!< Byte.

typedef ws_byte_t byte_t

!< long integer.

typedef wchar_t char_w_t

!< Ansi char type.

Specialisation of the basic_drophandle_sequence template for the ANSI character type char.

Specialisation of the basic_drophandle_sequence template for the ANSI character type char.

Specialisation of the basic_drophandle_sequence template for the Unicode character type wchar_t.

typedef ws_dword_t dword_t

!< bool.

Specialisation of the basic_path template for the ANSI character type char.

typedef ws_int16_t int16_t

!< 8-bit unsigned integer.

typedef ws_int32_t int32_t

!< 16-bit unsigned integer.

typedef int int_t

!< 32-bit unsigned integer.

!< short integer.

typedef ws_long_t long_t

!< unsigned integer.

typedef stlsoft:: basic_simple_string< char > reg_string_a_t

String type for ANSI character encoding used by the Registry library.

typedef stlsoft:: basic_simple_string<TCHAR> reg_string_t

String type for TCHAR character encoding used by the Registry library.

typedef stlsoft:: basic_simple_string< wchar_t > reg_string_w_t

String type for Unicode character encoding used by the Registry library.

typedef ws_sint16_t sint16_t

!< 16-bit integer.

typedef ws_sint32_t sint32_t

!< 32-bit integer.

typedef ws_sint8_t sint8_t

!< Unicode char type.

!< 8-bit integer.

typedef ws_sint_t sint_t

!< integer.

typedef ws_sptrint_t sptrint_t

!< streamoff.

typedef ws_streamoff_t streamoff_t

!< streampos.

typedef ws_streampos_t streampos_t

!< dword.

typedef ws_uint16_t uint16_t

!< 16-bit signed integer.

typedef ws_uint32_t uint32_t

!< 32-bit signed integer.

typedef ws_uint8_t uint8_t

!< 8-bit signed integer.

typedef ws_uint_t uint_t

!< signed integer.


Enumeration Type Documentation

anonymous enum

Enumerator:
MAX_VOL_NAME  The maximum number of characters in a volume name.


Function Documentation

BOOL winstl::bool2BOOL ( bool  bVal  )  [inline]

Safely converts a bool to a BOOL.

Parameters:
bVal The instance of bool to be converted to BOOL.
Return values:
0 If bVal is false.
1 If bVal is true.
Note:
In C compilation, this is defined as a functionally equivalent macro.
Remarks:
Although use of the BOOL type indicates that a "false" condition is represented by a value of 0, and all other values represent "true" it is not the case that all client code is implemented as such. In order to avoid fruitless debates with users of STLSoft who may be unaware of this convention, or unwilling or unable to accept it, bool2BOOL() implemented to ensure that the return value is only ever 0 or 1. Consequently, use of this function should be avoided where possible, and extensive use of it in your code base likely represents misuse. (See section 13.4.2 of Imperfect C++ for a discussion of these issues.)

bool winstl::BOOL2bool ( BOOL  bVal  )  [inline]

Safely converts a BOOL to a bool.

Parameters:
bVal The instance of BOOL to be converted to bool.
Return values:
false If bVal is 0.
true If bVal is non-0.
Note:
In C compilation, this is defined as a functionally equivalent macro.
Remarks:
Because all compilers (that we know about) represent a bool as one byte and BOOL (which is a typedef from int) as more than one byte, safely converting from BOOL to bool has to involve a runtime test against 0 that cannot be inlined by the compiler. Consequently, use of BOOL2bool() should be avoided where possible, and extensive use of it in your code base likely represents misuse. (See section 13.4.2 of Imperfect C++ for a discussion of these issues.)

Referenced by IsDlgItemEnabled(), and IsWindowClass().

SYSTEMTIME winstl::FILETIME2SYSTEMTIME ( FILETIME const &  ft  )  [inline]

[DEPRECATED] Converts a FILETIME value to a SYSTEMTIME value.

Deprecated:
Instead use winstl::to_SYSTEMTIME(FILETIME const&)

Parameters:
ft The FILETIME instance whose value is to be converted
Note:
If ft does not represent a valid time value, the return value is undefined. The caller may check GetLastError() to determine whether the conversion has been successful.

References to_SYSTEMTIME(), and winstl_ns_qual.

HKEY winstl::get_HKEY ( HKEY  h  )  [inline]

Access the HKEY of the given HKEY.

This access shim retrieves the HKEY registry handle for the given HKEY handle.

Parameters:
h A HKEY whose corresponding HKEY will be retrieved
Returns:
The HKEY corresponding to the given HKEY h

HKEY winstl::get_HKEY ( basic_reg_key< C, T, A > const &  key  )  [inline]

[Shim function] Returns the corresponding registry handle of an instance of winstl::basic_reg_key basic_reg_key.

This access shim retrieves the HKEY registry handle for the given HKEY handle.

Parameters:
key The winstl::basic_reg_key basic_reg_key instance whose corresponding HKEY will be retrieved
Returns:
The HKEY handle of the given winstl::basic_reg_key basic_reg_key instance

References basic_reg_key::get_key_handle().

Referenced by basic_reg_key::create_key().

HWND winstl::get_HWND ( HWND  h  )  [inline]

Access the HWND of the given HWND.

This access shim retrieves the HWND window handle for the given HWND handle.

Parameters:
h A HWND whose corresponding HWND will be retrieved
Returns:
The HWND corresponding to the given HWND h

Referenced by is_enabled::operator()(), is_visible::operator()(), and window_update_scope::window_update_scope().

HANDLE winstl::get_kernel_handle ( semaphore &  sem  )  [inline]

Overload of the form of the winstl::get_kernel_handle() shim for the winstl::semaphore type.

Parameters:
sem The winstl::semaphore instance
Return values:
The synchronisation handle of sem

References semaphore::get().

HANDLE winstl::get_kernel_handle ( process_mutex &  mx  )  [inline]

Overload of the form of the winstl::get_kernel_handle() shim for the winstl::process_mutex type.

Parameters:
mx The winstl::process_mutex instance
Return values:
The synchronisation handle of mx

References process_mutex::get().

HANDLE winstl::get_kernel_handle ( event &  ev  )  [inline]

Overload of the form of the winstl::get_kernel_handle() shim for the winstl::event type.

Parameters:
ev The winstl::event instance
Return values:
The synchronisation handle of ev

References event::get().

HANDLE winstl::get_kernel_handle ( HANDLE  h  )  [inline]

Degenerate form of the WinSTL get_kernel_handle() shim, which simply returns the handle it's given.

Parameters:
h The handle
Return values:
The handle h

HANDLE winstl::get_kernel_handle ( CSemaphore &  sem  )  [inline]

Overload of the WinSTL get_kernel_handle() shim for MFC's CSemaphore.

Parameters:
sem The semaphore instance
Return values:
The handle h
Remarks:
We cannot simply define the shim overload in terms of CSemaphore for two reasons. First, the template mechanism requires a precise shim when the

HANDLE winstl::get_kernel_handle ( CMutex &  mx  )  [inline]

Overload of the WinSTL get_kernel_handle() shim for MFC's CMutex.

Parameters:
mx The mutex instance
Return values:
The handle h
Remarks:
We cannot simply define the shim overload in terms of CMutex for two reasons. First, the template mechanism requires a precise shim when the

HANDLE winstl::get_kernel_handle ( CEvent &  ev  )  [inline]

Overload of the WinSTL get_kernel_handle() shim for MFC's CEvent.

Parameters:
ev The event instance
Return values:
The handle h
Remarks:
We cannot simply define the shim overload in terms of CEvent for two reasons. First, the template mechanism requires a precise shim when the

C const* winstl::get_ptr ( winstl_ns_qual(basic_error_desc)< C, T > const &  e  )  [inline]

[DEPRECATED] stlsoft::get_ptr Pointer Attribute Shim for winstl::basic_error_desc

Deprecated:
get_ptr is for pointers and "smart pointers".

HANDLE winstl::get_synch_handle ( semaphore &  sem  )  [inline]

Overload of the form of the winstl::get_synch_handle() shim for the winstl::semaphore type.

Parameters:
sem The winstl::semaphore instance
Return values:
The synchronisation handle of sem

References semaphore::get().

HANDLE winstl::get_synch_handle ( process_mutex &  mx  )  [inline]

Overload of the form of the winstl::get_synch_handle() shim for the winstl::process_mutex type.

Parameters:
mx The winstl::process_mutex instance
Return values:
The synchronisation handle of mx

References process_mutex::get().

HANDLE winstl::get_synch_handle ( event &  ev  )  [inline]

Overload of the form of the winstl::get_synch_handle() shim for the winstl::event type.

Parameters:
ev The winstl::event instance
Return values:
The synchronisation handle of ev

References event::get().

HANDLE winstl::get_synch_handle ( HANDLE  h  )  [inline]

Degenerate form of the WinSTL get_synch_handle() shim, which simply returns the handle it's given.

Parameters:
h The handle
Return values:
The handle h

HANDLE winstl::get_synch_handle ( CSemaphore &  sem  )  [inline]

Overload of the WinSTL get_synch_handle() shim for MFC's CSemaphore.

Parameters:
sem The semaphore instance
Return values:
The synchronisation handle associated with the semaphore
Remarks:
We cannot simply define the shim overload in terms of CSyncObject for two reasons. First, the template mechanism requires a precise type for the shim, not an inheritance-related group of types. Second, the class CCriticalSection also derives from CSyncObject, and it is not a kernel synchronisation object, and attempting to elicit a synchronisable handle from it would result in a runtime error.

HANDLE winstl::get_synch_handle ( CMutex &  mx  )  [inline]

Overload of the WinSTL get_synch_handle() shim for MFC's CMutex.

Parameters:
mx The mutex instance
Return values:
The synchronisation handle associated with the mutex
Remarks:
We cannot simply define the shim overload in terms of CSyncObject for two reasons. First, the template mechanism requires a precise type for the shim, not an inheritance-related group of types. Second, the class CCriticalSection also derives from CSyncObject, and it is not a kernel synchronisation object, and attempting to elicit a synchronisable handle from it would result in a runtime error.

HANDLE winstl::get_synch_handle ( CEvent &  ev  )  [inline]

Overload of the WinSTL get_synch_handle() shim for MFC's CEvent.

Parameters:
ev The event instance
Return values:
The synchronisation handle associated with the event
Remarks:
We cannot simply define the shim overload in terms of CSyncObject for two reasons. First, the template mechanism requires a precise type for the shim, not an inheritance-related group of types. Second, the class CCriticalSection also derives from CSyncObject, and it is not a kernel synchronisation object, and attempting to elicit a synchronisable handle from it would result in a runtime error.

Referenced by wait_for_multiple_objects().

int __stdcall winstl::GetTimeFormat_msA ( LCID  locale,
DWORD  dwFlags,
CONST SYSTEMTIME *  lpTime,
char const *  lpFormat,
char *  lpTimeStr,
int  cchTime 
) [inline]

Analogue to the Win32 API GetTimeFormat(), but also provides milliseconds as part of the time picture.

Parameters:
locale 
dwFlags 
lpTime 
lpFormat 
lpTimeStr The buffer into which the result will be written
cchTime Number of character spaces available in lpTimeStr. If 0, the required length is returned, and lpTimeStr is ignored.
Returns:
The number of characters written to lpTimeStr (if 0 != cchTime), or required (if 0 == cchTime).

References WINSTL_ASSERT.

basic_absolute_path<C> winstl::make_absolute_path ( C const *  path  )  [inline]

This creator function makes an absolute path variable without needing to qualify the template parameter.

int winstl::micro_sleep ( ws_uint_t  microseconds  )  [inline]

[C++ only] Puts the calling thread to sleep for the given number of microseconds.

winstl::micro_sleep(100000);  // Sleep for 0.1 seconds
winstl::micro_sleep(100);     // Sleep for 0.1 milliseconds

Parameters:
microseconds The number of microseconds to wait
Returns:
A boolean value indicating whether the operation was successful. If not, GetLastError() will contain an error code representing the reason for failure.
Examples:
by_library/performance/processtimes_counter/processtimes_counter.cpp.

References winstl__micro_sleep().

S& winstl::operator<< ( S &  s,
UDATE const &  ud 
) [inline]

An inserter function for UDATE into output streams.

S& winstl::operator<< ( S &  s,
FILETIME const &  ft 
) [inline]

An inserter function for FILETIME into output streams.

S& winstl::operator<< ( S &  s,
SYSTEMTIME const &  st 
) [inline]

An inserter function for SYSTEMTIME into output streams.

DATE winstl::to_DATE ( UDATE const &  rhs  )  [inline]

Converts an instance of UDATE to an instance of DATE.

Parameters:
rhs A valid date, of type UDATE
Returns:
A valid date, of type DATE
Exceptions:
winstl::conversion_error If the conversion fails, e.g. the UDATE instance does not contain a valid date. When compiling absent exception support, a zero-initialised instance of DATE is returned.

References to_DATE(), and to_SYSTEMTIME().

DATE winstl::to_DATE ( SYSTEMTIME const &  rhs  )  [inline]

Converts an instance of SYSTEMTIME to an instance of DATE, using the Windows API function VarUdateFromDate().

Parameters:
rhs A valid date, of type SYSTEMTIME
Returns:
A valid date, of type DATE
Exceptions:
winstl::conversion_error If the conversion fails, e.g. the SYSTEMTIME instance does not contain a valid date. When compiling absent exception support, a zero-initialised instance of DATE is returned.

DATE winstl::to_DATE ( FILETIME const &  rhs  )  [inline]

Converts an instance of FILETIME to an instance of DATE.

Parameters:
rhs A valid date, of type FILETIME
Returns:
A valid date, of type DATE
Exceptions:
winstl::conversion_error If the conversion fails, e.g. the FILETIME instance does not contain a valid date. When compiling absent exception support, a zero-initialised instance of DATE is returned.

References to_DATE(), and to_SYSTEMTIME().

DATE const& winstl::to_DATE ( DATE const &  rhs  )  throw () [inline]

Degenerate case of the group__concept__shim__time_conversion__to_DATE.

Parameters:
rhs An instance of type DATE
Returns:
An instance of type DATE
Exceptions:
- No error checking is performed, and no exception can be thrown.

Referenced by to_DATE().


Variable Documentation

const COLORREF black = RGB( 0, 0, 0)

Colour constant

const COLORREF blue = RGB( 0, 0, 255)

Colour constant

const COLORREF bluegreen = RGB( 0, 128, 128)

Colour constant

const COLORREF blueGreen = RGB( 0, 128, 128)

Colour constant

const COLORREF brown = RGB(128, 0, 0)

Colour constant

const size_t CONST_MAX_PATH = WINSTL_CONST_MAX_PATH

C++ constant equivalent to WINSTL_CONST_MAX_PATH.

const size_t CONST_NT_MAX_PATH = WINSTL_CONST_NT_MAX_PATH

C++ constant equivalent to WINSTL_CONST_NT_MAX_PATH.

const COLORREF cyan = RGB( 0, 255, 255)

Colour constant

const COLORREF darkblue = RGB( 0, 0, 128)

Colour constant

const COLORREF darkBlue = RGB( 0, 0, 128)

Colour constant

const COLORREF darkgreen = RGB( 0, 128, 0)

Colour constant

const COLORREF darkGreen = RGB( 0, 128, 0)

Colour constant

const COLORREF darkgrey = RGB(128, 128, 128)

Colour constant

const COLORREF darkGrey = RGB(128, 128, 128)

Colour constant

const COLORREF green = RGB( 0, 255, 0)

Colour constant

const COLORREF lightgrey = RGB(192, 192, 192)

Colour constant

const COLORREF lightGrey = RGB(192, 192, 192)

Colour constant

const COLORREF magenta = RGB(255, 0, 255)

Colour constant

const COLORREF olive = RGB(128, 128, 0)

Colour constant

const COLORREF purple = RGB(128, 0, 128)

Colour constant

const COLORREF red = RGB(255, 0, 0)

Colour constant

const COLORREF white = RGB(255, 255, 255)

Colour constant

const COLORREF yellow = RGB(255, 255, 0)

Colour constant


Generated on Thu Jun 10 08:59:15 2010 for STLSoft by  doxygen 1.5.6