/usr/include/boost/regex/v4
NameSizeModeActions
basic_regex.hpp240890644editdlrm
basic_regex_creator.hpp542060644editdlrm
basic_regex_parser.hpp1128510644editdlrm
char_regex_traits.hpp17260644editdlrm
cpp_regex_traits.hpp394250644editdlrm
cregex.hpp109870644editdlrm
c_regex_traits.hpp54970644editdlrm
error_type.hpp12580644editdlrm
fileiter.hpp143770644editdlrm
indexed_bit_flag.hpp13160644editdlrm
instances.hpp90800644editdlrm
iterator_category.hpp19600644editdlrm
iterator_traits.hpp38020644editdlrm
match_flags.hpp69340644editdlrm
match_results.hpp227730644editdlrm
mem_block_cache.hpp31320644editdlrm
perl_matcher.hpp188470644editdlrm
perl_matcher_common.hpp304760644editdlrm
perl_matcher_non_recursive.hpp632380644editdlrm
perl_matcher_recursive.hpp345400644editdlrm
primary_transform.hpp33470644editdlrm
protected_call.hpp16880644editdlrm
regbase.hpp59720644editdlrm
regex.hpp45900644editdlrm
regex_format.hpp342310644editdlrm
regex_fwd.hpp16460644editdlrm
regex_grep.hpp48790644editdlrm
regex_iterator.hpp64740644editdlrm
regex_match.hpp144750644editdlrm
regex_merge.hpp27650644editdlrm
regex_raw_buffer.hpp36860644editdlrm
regex_replace.hpp29250644editdlrm
regex_search.hpp70970644editdlrm
regex_split.hpp49560644editdlrm
regex_token_iterator.hpp126130644editdlrm
regex_traits.hpp49650644editdlrm
regex_traits_defaults.hpp115550644editdlrm
regex_workaround.hpp61710644editdlrm
states.hpp119150644editdlrm
sub_match.hpp231550644editdlrm
syntax_type.hpp43740644editdlrm
u32regex_iterator.hpp64750644editdlrm
u32regex_token_iterator.hpp150680644editdlrm
w32_regex_traits.hpp244550644editdlrm
Edit: /usr/include/boost/regex/v4/regex_raw_buffer.hpp (3686B)
/* * * Copyright (c) 1998-2002 * John Maddock * * Use, modification and distribution are subject to 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) * */ /* * LOCATION: see http://www.boost.org for most recent version. * FILE regex_raw_buffer.hpp * VERSION see * DESCRIPTION: Raw character buffer for regex code. * Note this is an internal header file included * by regex.hpp, do not include on its own. */ #ifndef BOOST_REGEX_RAW_BUFFER_HPP #define BOOST_REGEX_RAW_BUFFER_HPP #ifndef BOOST_REGEX_CONFIG_HPP #include #endif #include #include namespace boost{ namespace BOOST_REGEX_DETAIL_NS{ #ifdef BOOST_MSVC #pragma warning(push) #pragma warning(disable: 4103) #endif #ifdef BOOST_HAS_ABI_HEADERS # include BOOST_ABI_PREFIX #endif #ifdef BOOST_MSVC #pragma warning(pop) #endif struct empty_padding{}; union padding { void* p; unsigned int i; }; template struct padding3 { enum{ padding_size = 8, padding_mask = 7 }; }; template<> struct padding3<2> { enum{ padding_size = 2, padding_mask = 1 }; }; template<> struct padding3<4> { enum{ padding_size = 4, padding_mask = 3 }; }; template<> struct padding3<8> { enum{ padding_size = 8, padding_mask = 7 }; }; template<> struct padding3<16> { enum{ padding_size = 16, padding_mask = 15 }; }; enum{ padding_size = padding3::padding_size, padding_mask = padding3::padding_mask }; // // class raw_storage // basically this is a simplified vector // this is used by basic_regex for expression storage // class BOOST_REGEX_DECL raw_storage { public: typedef std::size_t size_type; typedef unsigned char* pointer; private: pointer last, start, end; public: raw_storage(); raw_storage(size_type n); ~raw_storage() { ::operator delete(start); } void BOOST_REGEX_CALL resize(size_type n); void* BOOST_REGEX_CALL extend(size_type n) { if(size_type(last - end) < n) resize(n + (end - start)); pointer result = end; end += n; return result; } void* BOOST_REGEX_CALL insert(size_type pos, size_type n); size_type BOOST_REGEX_CALL size() { return size_type(end - start); } size_type BOOST_REGEX_CALL capacity() { return size_type(last - start); } void* BOOST_REGEX_CALL data()const { return start; } size_type BOOST_REGEX_CALL index(void* ptr) { return size_type(static_cast(ptr) - static_cast(data())); } void BOOST_REGEX_CALL clear() { end = start; } void BOOST_REGEX_CALL align() { // move end up to a boundary: end = start + (((end - start) + padding_mask) & ~padding_mask); } void swap(raw_storage& that) { std::swap(start, that.start); std::swap(end, that.end); std::swap(last, that.last); } }; inline raw_storage::raw_storage() { last = start = end = 0; } inline raw_storage::raw_storage(size_type n) { start = end = static_cast(::operator new(n)); BOOST_REGEX_NOEH_ASSERT(start) last = start + n; } #ifdef BOOST_MSVC #pragma warning(push) #pragma warning(disable: 4103) #endif #ifdef BOOST_HAS_ABI_HEADERS # include BOOST_ABI_SUFFIX #endif #ifdef BOOST_MSVC #pragma warning(pop) #endif } // namespace BOOST_REGEX_DETAIL_NS } // namespace boost #endif