# Library Foundation

# Package Core

## Overview

Classes: AbstractInstantiator, ApplicationException, Array, Ascii, AssertionViolationException, AtomicCounter, AtomicFlag, AutoPtr, AutoReleasePool, BadCastException, BasicFIFOBuffer, Buffer, Bugcheck, BugcheckException, ByteOrder, CILess, Checksum, CircularReferenceException, CreateFileException, DataException, DataFormatException, Debugger, DirectoryNotEmptyException, DynamicFactory, Environment, Error, Exception, ExistsException, FPEnvironment, FastMemoryPool, FileAccessDeniedException, FileException, FileExistsException, FileNotFoundException, FileReadOnlyException, Getter, IOException, IllegalStateException, Instantiator, InvalidAccessException, InvalidArgumentException, IsConst, IsReference, LibraryAlreadyLoadedException, LibraryLoadException, ListMap, LogicException, MemoryPool, NDCScope, NamedTuple, NestedDiagnosticContext, NoPermissionException, NoThreadAvailableException, NotFoundException, NotImplementedException, NullPointerException, NullTypeList, NullValueException, Nullable, NumberFormatter, NumberParser, ObjectPool, OpenFileException, Optional, OutOfMemoryException, PathNotFoundException, PathSyntaxException, PoolOverflowException, PoolableObjectFactory, PropertyNotSupportedException, ProtocolException, Ptr, RangeException, ReadFileException, RefCountedObject, ReferenceCounter, RegularExpressionException, ReleaseArrayPolicy, ReleasePolicy, RuntimeException, SharedPtr, SignalException, SingletonHolder, StringTokenizer, SyntaxException, SystemException, TimeoutException, TooManyURIRedirectsException, Tuple, TypeList, TypeListType, TypeSizeGT, TypeSizeLE, TypeWrapper, URISyntaxException, UnhandledException, UnknownURISchemeException, Void, WriteFileException, i_char_traits

Functions: cat, decimalSeparator, doubleToFixedStr, doubleToStr, endsWith, floatToFixedStr, floatToStr, format, formatAny, icompare, intToStr, isIntOverflow, isNegative, isSafeIntCast, isubstr, makeAuto, makeShared, makeSharedArray, operator !=, operator <, operator <<, operator <=, operator ==, operator >, operator >=, operator [], remove, removeInPlace, replace, replaceInPlace, safeIntCast, safeMultiply, startsWith, strToDouble, strToFloat, strToInt, swap, thousandSeparator, toJSON, toLower, toLowerInPlace, toUpper, toUpperInPlace, translate, translateInPlace, trim, trimInPlace, trimLeft, trimLeftInPlace, trimRight, trimRightInPlace, uIntToStr

## Classes

### class AbstractInstantiator

The common base class for all Instantiator instantiations.

### class ApplicationException

### class Array

STL container like C-style array replacement class.

### class Ascii

This class contains enumerations and static utility functions for dealing with ASCII characters and their properties.

### class AssertionViolationException

### class AtomicCounter

This class implements a simple counter, which provides atomic operations that are safe to use in a multithreaded environment.

### class AtomicFlag

This class implements an atomic boolean flag by wrapping the std::atomic_flag.

### class AutoPtr

AutoPtr is a "smart" pointer for classes implementing reference counting based garbage collection.

### class AutoReleasePool

An AutoReleasePool implements simple garbage collection for reference-counted objects.

### class BadCastException

### class BasicFIFOBuffer

A simple buffer class with support for re-entrant, FIFO-style read/write operations, as well as (optional) empty/non-empty/full (i.

### class Buffer

A buffer class that allocates a buffer of a given type and size in the constructor and deallocates the buffer in the destructor.

### class Bugcheck

This class provides some static methods that are used by the poco_assert_dbg(), poco_assert(), poco_check_ptr(), poco_bugcheck() and poco_unexpected() macros.

### class BugcheckException

### class ByteOrder

This class contains a number of static methods to convert between big-endian and little-endian integers of various sizes.

### struct CILess

Case-insensitive less-than functor; useful for standard maps and sets with std::strings keys and case-insensitive ordering requirement.

### class Checksum

This class calculates CRC-32 or Adler-32 checksums for arbitrary data.

### class CircularReferenceException

### class CreateFileException

### class DataException

### class DataFormatException

### class Debugger

The Debugger class provides an interface to the debugger.

### class DirectoryNotEmptyException

### class DynamicFactory

A factory that creates objects by class name.

### class Environment

This class provides access to environment variables and some general system information.

### class Error

The Error class provides utility functions for error reporting.

### class Exception

This is the base class for all exceptions defined in the Poco class library.

### class ExistsException

### class FPEnvironment

Instances of this class can be used to save and later restore the current floating point environment (consisting of rounding mode and floating-point flags).

### class FastMemoryPool

FastMemoryPool is a class for pooling fixed-size blocks of memory.

### class FileAccessDeniedException

### class FileException

### class FileExistsException

### class FileNotFoundException

### class FileReadOnlyException

### struct Getter

### class IOException

### class IllegalStateException

### class Instantiator

A template class for the easy instantiation of instantiators.

### class InvalidAccessException

### class InvalidArgumentException

### struct IsConst

Use this struct to determine if a template type is a const type.

### struct IsReference

Use this struct to determine if a template type is a reference.

### class LibraryAlreadyLoadedException

### class LibraryLoadException

### class ListMap

This class implements a multimap in terms of a sequential container.

### class LogicException

### class MemoryPool

A simple pool for fixed-size memory blocks.

### class NDCScope

This class can be used to automatically push a context onto the NDC stack at the beginning of a scope, and to pop the context at the end of the scope.

### struct NamedTuple

### class NestedDiagnosticContext

This class implements a Nested Diagnostic Context (NDC), as described in Neil Harrison's article "Patterns for Logging Diagnostic Messages" in "Pattern Languages of Program Design 3" (Addison-Wesley).

### class NoPermissionException

### class NoThreadAvailableException

### class NotFoundException

### class NotImplementedException

### class NullPointerException

### struct NullTypeList

### class NullValueException

### class Nullable

Nullable is a simple wrapper class for value types that allows objects or native type variables to have "null" value.

### class NumberFormatter

The NumberFormatter class provides static methods for formatting numeric values into strings.

### class NumberParser

The NumberParser class provides static methods for parsing numbers out of strings.

### class ObjectPool

An ObjectPool manages a pool of objects of a certain class.

### class OpenFileException

### class Optional

Optional is a simple wrapper class for value types that allows to introduce a specified/unspecified state to value objects.

### class OutOfMemoryException

### class PathNotFoundException

### class PathSyntaxException

### class PoolOverflowException

### class PoolableObjectFactory

A PoolableObjectFactory is responsible for creating and resetting objects managed by an ObjectPool.

### class PropertyNotSupportedException

### class ProtocolException

### class Ptr

Utility char pointer wrapper class.

### class RangeException

### class ReadFileException

### class RefCountedObject

A base class for objects that employ reference counting based garbage collection.

### class ReferenceCounter

Simple ReferenceCounter object, does not delete itself when count reaches 0.

### class RegularExpressionException

### class ReleaseArrayPolicy

The release policy for SharedPtr holding arrays.

### class ReleasePolicy

The default release policy for SharedPtr, which simply uses the delete operator to delete an object.

### class RuntimeException

### class SharedPtr

SharedPtr is a "smart" pointer for classes implementing reference counting based garbage collection.

### class SignalException

### class SingletonHolder

This is a helper template class for managing singleton objects allocated on the heap.

### class StringTokenizer

A simple tokenizer that splits a string into tokens, which are separated by separator characters.

### class SyntaxException

### class SystemException

### class TimeoutException

### class TooManyURIRedirectsException

### struct Tuple

### struct TypeList

Compile Time List of Types

### struct TypeListType

TypeListType takes 1 - 40 typename arguments.

### struct TypeSizeGT

### struct TypeSizeLE

### struct TypeWrapper

Specialization for const char arrays Use the type wrapper if you want to decouple constness and references from template types.

### class URISyntaxException

### class UnhandledException

### class UnknownURISchemeException

### class Void

A dummy class with value-type semantics, mostly useful as a template argument.

### class WriteFileException

### struct i_char_traits