DriveHQ Start Menu
Cloud Drive Mapping
Folder Sync
Cloud Backup
True Drop Box
FTP/SFTP Hosting
Group Account
DriveHQ Start Menu
Online File Server
My Storage
|
Manage Shares
|
Publishes
|
Drop Boxes
|
Group Account
WebDAV Drive Mapping
Cloud Drive Home
|
WebDAV Guide
|
Drive Mapping Tool
|
Drive Mapping URL
Complete Data Backup
Backup Guide
|
Online Backup Tool
|
Cloud-to-Cloud Backup
FTP, Email & Web Service
FTP Home
|
FTP Hosting FAQ
|
Email Hosting
|
EmailManager
|
Web Hosting
Help & Resources
About
|
Enterprise Service
|
Partnership
|
Comparisons
|
Support
Quick Links
Security and Privacy
Download Software
Service Manual
Use Cases
Group Account
Online Help
Blog
Contact
Cloud Surveillance
Sign Up
Login
Features
Business Features
Online File Server
FTP Hosting
Cloud Drive Mapping
Cloud File Backup
Email Backup & Hosting
Cloud File Sharing
Folder Synchronization
Group Management
True Drop Box
Full-text Search
AD Integration/SSO
Mobile Access
IP Camera & DVR Solution
More...
Personal Features
Personal Cloud Drive
Backup All Devices
Mobile APPs
Personal Web Hosting
Sub-Account (for Kids)
Home/PC/Kids Monitoring
More...
Software
DriveHQ Drive Mapping Tool
DriveHQ FileManager
DriveHQ Online Backup
DriveHQ Mobile Apps
Pricing
Business Plans & Pricing
Personal Plans & Pricing
Price Comparison with Others
Feature Comparison with Others
Install Mobile App
Sign up
Creating account...
Invalid character in username! Only 0-9, a-z, A-Z, _, -, . allowed.
Username is required!
Invalid email address!
E-mail is required!
Password is required!
Password is invalid!
Password and confirmation do not match.
Confirm password is required!
I accept
Membership Agreement
Please read the Membership Agreement and check "I accept"!
Free Quick Sign-up
Sign-up Page
Log in
Signing in...
Username or e-mail address is required!
Password is required!
Keep me logged in
Quick Login
Forgot Password
Up
Upload
Download
Share
Publish
New Folder
New File
Copy
Cut
Delete
Paste
Rate
Upgrade
Rotate
Effect
Edit
Slide
History
// Boost string_algo library classification.hpp header file ---------------------------// // Copyright Pavol Droba 2002-2003. // // Distributed under the Boost Software License, Version 1.0. // (See accompanying file LICENSE_1_0.txt or copy at // http://www.boost.org/LICENSE_1_0.txt) // See http://www.boost.org/ for updates, documentation, and revision history. #ifndef BOOST_STRING_CLASSIFICATION_HPP #define BOOST_STRING_CLASSIFICATION_HPP #include
#include
#include
#include
#include
#include
/*! \file Classification predicates are included in the library to give some more convenience when using algorithms like \c trim() and \c all(). They wrap functionality of STL classification functions ( e.g. \c std::isspace() ) into generic functors. */ namespace boost { namespace algorithm { // classification functor generator -------------------------------------// //! is_classified predicate /*! Construct the \c is_classified predicate. This predicate holds if the input is of specified \c std::ctype category. \param Type A \c std::ctype category \param Loc A locale used for classification \return An instance of the \c is_classified predicate */ inline detail::is_classifiedF is_classified(std::ctype_base::mask Type, const std::locale& Loc=std::locale()) { return detail::is_classifiedF(Type, Loc); } //! is_space predicate /*! Construct the \c is_classified predicate for the \c ctype_base::space category. \param Loc A locale used for classification \return An instance of the \c is_classified predicate */ inline detail::is_classifiedF is_space(const std::locale& Loc=std::locale()) { return detail::is_classifiedF(std::ctype_base::space, Loc); } //! is_alnum predicate /*! Construct the \c is_classified predicate for the \c ctype_base::alnum category. \param Loc A locale used for classification \return An instance of the \c is_classified predicate */ inline detail::is_classifiedF is_alnum(const std::locale& Loc=std::locale()) { return detail::is_classifiedF(std::ctype_base::alnum, Loc); } //! is_alpha predicate /*! Construct the \c is_classified predicate for the \c ctype_base::alpha category. \param Loc A locale used for classification \return An instance of the \c is_classified predicate */ inline detail::is_classifiedF is_alpha(const std::locale& Loc=std::locale()) { return detail::is_classifiedF(std::ctype_base::alpha, Loc); } //! is_cntrl predicate /*! Construct the \c is_classified predicate for the \c ctype_base::cntrl category. \param Loc A locale used for classification \return An instance of the \c is_classified predicate */ inline detail::is_classifiedF is_cntrl(const std::locale& Loc=std::locale()) { return detail::is_classifiedF(std::ctype_base::cntrl, Loc); } //! is_digit predicate /*! Construct the \c is_classified predicate for the \c ctype_base::digit category. \param Loc A locale used for classification \return An instance of the \c is_classified predicate */ inline detail::is_classifiedF is_digit(const std::locale& Loc=std::locale()) { return detail::is_classifiedF(std::ctype_base::digit, Loc); } //! is_graph predicate /*! Construct the \c is_classified predicate for the \c ctype_base::graph category. \param Loc A locale used for classification \return An instance of the \c is_classified predicate */ inline detail::is_classifiedF is_graph(const std::locale& Loc=std::locale()) { return detail::is_classifiedF(std::ctype_base::graph, Loc); } //! is_lower predicate /*! Construct the \c is_classified predicate for the \c ctype_base::lower category. \param Loc A locale used for classification \return An instance of \c is_classified predicate */ inline detail::is_classifiedF is_lower(const std::locale& Loc=std::locale()) { return detail::is_classifiedF(std::ctype_base::lower, Loc); } //! is_print predicate /*! Construct the \c is_classified predicate for the \c ctype_base::print category. \param Loc A locale used for classification \return An instance of the \c is_classified predicate */ inline detail::is_classifiedF is_print(const std::locale& Loc=std::locale()) { return detail::is_classifiedF(std::ctype_base::print, Loc); } //! is_punct predicate /*! Construct the \c is_classified predicate for the \c ctype_base::punct category. \param Loc A locale used for classification \return An instance of the \c is_classified predicate */ inline detail::is_classifiedF is_punct(const std::locale& Loc=std::locale()) { return detail::is_classifiedF(std::ctype_base::punct, Loc); } //! is_upper predicate /*! Construct the \c is_classified predicate for the \c ctype_base::upper category. \param Loc A locale used for classification \return An instance of the \c is_classified predicate */ inline detail::is_classifiedF is_upper(const std::locale& Loc=std::locale()) { return detail::is_classifiedF(std::ctype_base::upper, Loc); } //! is_xdigit predicate /*! Construct the \c is_classified predicate for the \c ctype_base::xdigit category. \param Loc A locale used for classification \return An instance of the \c is_classified predicate */ inline detail::is_classifiedF is_xdigit(const std::locale& Loc=std::locale()) { return detail::is_classifiedF(std::ctype_base::xdigit, Loc); } //! is_any_of predicate /*! Construct the \c is_any_of predicate. The predicate holds if the input is included in the specified set of characters. \param Set A set of characters to be recognized \return An instance of the \c is_any_of predicate */ template
inline detail::is_any_ofF< BOOST_STRING_TYPENAME range_value
::type> is_any_of( const RangeT& Set ) { return detail::is_any_ofF< BOOST_STRING_TYPENAME range_value
::type>(as_literal(Set)); } //! is_from_range predicate /*! Construct the \c is_from_range predicate. The predicate holds if the input is included in the specified range. (i.e. From <= Ch <= To ) \param From The start of the range \param To The end of the range \return An instance of the \c is_from_range predicate */ template
inline detail::is_from_rangeF
is_from_range(CharT From, CharT To) { return detail::is_from_rangeF
(From,To); } // predicate combinators ---------------------------------------------------// //! predicate 'and' composition predicate /*! Construct the \c class_and predicate. This predicate can be used to logically combine two classification predicates. \c class_and holds, if both predicates return true. \param Pred1 The first predicate \param Pred2 The second predicate \return An instance of the \c class_and predicate */ template
inline detail::pred_andF
operator&&( const predicate_facade
& Pred1, const predicate_facade
& Pred2 ) { // Doing the static_cast with the pointer instead of the reference // is a workaround for some compilers which have problems with // static_cast's of template references, i.e. CW8. /grafik/ return detail::pred_andF
( *static_cast
(&Pred1), *static_cast
(&Pred2) ); } //! predicate 'or' composition predicate /*! Construct the \c class_or predicate. This predicate can be used to logically combine two classification predicates. \c class_or holds, if one of the predicates return true. \param Pred1 The first predicate \param Pred2 The second predicate \return An instance of the \c class_or predicate */ template
inline detail::pred_orF
operator||( const predicate_facade
& Pred1, const predicate_facade
& Pred2 ) { // Doing the static_cast with the pointer instead of the reference // is a workaround for some compilers which have problems with // static_cast's of template references, i.e. CW8. /grafik/ return detail::pred_orF
( *static_cast
(&Pred1), *static_cast
(&Pred2)); } //! predicate negation operator /*! Construct the \c class_not predicate. This predicate represents a negation. \c class_or holds if of the predicates return false. \param Pred The predicate to be negated \return An instance of the \c class_not predicate */ template
inline detail::pred_notF
operator!( const predicate_facade
& Pred ) { // Doing the static_cast with the pointer instead of the reference // is a workaround for some compilers which have problems with // static_cast's of template references, i.e. CW8. /grafik/ return detail::pred_notF
(*static_cast
(&Pred)); } } // namespace algorithm // pull names to the boost namespace using algorithm::is_classified; using algorithm::is_space; using algorithm::is_alnum; using algorithm::is_alpha; using algorithm::is_cntrl; using algorithm::is_digit; using algorithm::is_graph; using algorithm::is_lower; using algorithm::is_upper; using algorithm::is_print; using algorithm::is_punct; using algorithm::is_xdigit; using algorithm::is_any_of; using algorithm::is_from_range; } // namespace boost #endif // BOOST_STRING_PREDICATE_HPP
classification.hpp
Page URL
File URL
Prev
2/24
Next
Download
( 11 KB )
Note: The DriveHQ service banners will NOT be displayed if the file owner is a paid member.
Comments
Total ratings:
0
Average rating:
Not Rated
Would you like to comment?
Join DriveHQ
for a free account, or
Logon
if you are already a member.