当前位置: 首页>>代码示例>>C++>>正文


C++ string_ref::begin方法代码示例

本文整理汇总了C++中boost::string_ref::begin方法的典型用法代码示例。如果您正苦于以下问题:C++ string_ref::begin方法的具体用法?C++ string_ref::begin怎么用?C++ string_ref::begin使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在boost::string_ref的用法示例。


在下文中一共展示了string_ref::begin方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: find_if

			std::vector<std::pair<boost::string_ref, boost::string_ref>>::const_iterator find(const boost::string_ref key) const
			{
				return std::find_if(m_collection.begin(), m_collection.end(),
					[key](const std::pair<boost::string_ref, boost::string_ref>& str)-> bool
				{
					auto oneSize = str.first.size();
					auto twoSize = key.size();

					if (oneSize != twoSize)
					{
						return false;
					}

					if (oneSize >= 4)
					{
						if ((str.first[0] == key[0]) && 
							(str.first[1] == key[1]) && 
							(str.first[oneSize - 1] == key[oneSize - 1]) && 
							(str.first[oneSize - 2] == key[oneSize - 2]))
						{
							return std::memcmp(str.first.begin(), key.begin(), oneSize) == 0;
						}
					}
					else
					{
						return std::memcmp(str.first.begin(), key.begin(), oneSize) == 0;
					}

					return false;
				}
				);
			}
开发者ID:Sentimentron,项目名称:GQ,代码行数:32,代码来源:Node.hpp

示例2: operator

		bool operator()(const boost::string_ref& strRef1, const boost::string_ref& strRef2) const
		{
			auto oneSize = strRef1.size();
			auto twoSize = strRef2.size();

			if (oneSize != twoSize)
			{
				return false;
			}

			return std::memcmp(strRef1.begin(), strRef2.begin(), oneSize) == 0;
		}
开发者ID:TechnikEmpire,项目名称:GQ,代码行数:12,代码来源:StrRefHash.hpp

示例3: print_string

 void print_string(boost::string_ref str, std::ostream& out)
 {
     for (boost::string_ref::const_iterator cur = str.begin();
         cur != str.end(); ++cur)
     {
         print_char(*cur, out);
     }
 }
开发者ID:OggYiu,项目名称:rag-engine,代码行数:8,代码来源:utils.cpp

示例4: cpp_name

std::string codegen_base::cpp_name(boost::string_ref name)
{
  std::string result;
  if (!std::isalpha(name[0]))
    result = "_";
  std::transform(name.begin(), name.end(), std::back_inserter(result),
                 [] (char c) { return std::isalnum(c) ? c : '_'; });
  return result;
}
开发者ID:cuavas,项目名称:mFAST,代码行数:9,代码来源:codegen_base.cpp

示例5: is_emm_file

	inline bool is_emm_file(boost::string_ref path) 
	{
		std::ifstream ifs( convert_code( path, CP_UTF8, CP_OEMCP ), std::ios::binary );
		if( ifs.fail() ) {
			return false;
		}

		std::istreambuf_iterator< char > first( ifs ), last;
		boost::string_ref const seg( "[Info]\r\nVersion = 3\r\n" );

		return std::search( first, last, seg.begin(), seg.end() ) != last;
	}
开发者ID:LNSEAB,项目名称:pmm_lookupper,代码行数:12,代码来源:emm.hpp

示例6: drive_letter_exists

	inline bool drive_letter_exists(Iterator itr, Iterator end)
	{
		boost::string_ref const str( ":\\" );

		if( std::distance( itr, end ) < static_cast< std::ptrdiff_t >( str.size() + 1 ) ) {
			return false;
		}

		for( int i = 'A'; i <= 'Z'; ++i ) {
			if( *itr == i ) {
				return std::equal( str.begin(), str.end(), itr + 1 );
			}
		}

		return false;
	}
开发者ID:LNSEAB,项目名称:pmm_lookupper,代码行数:16,代码来源:file.hpp

示例7: index

 id_placeholder::id_placeholder(
         unsigned index,
         boost::string_ref id,
         id_category category,
         id_placeholder const* parent_)
   : index(index),
     unresolved_id(parent_ ?
         parent_->unresolved_id + '.' + detail::to_s(id) :
         detail::to_s(id)),
     id(id.begin(), id.end()),
     parent(parent_),
     category(category),
     num_dots(boost::range::count(id, '.') +
         (parent_ ? parent_->num_dots + 1 : 0))
 {
 }
开发者ID:AlexMioMio,项目名称:boost,代码行数:16,代码来源:document_state.cpp

示例8: encode_string

    std::string encode_string(boost::string_ref str)
    {
        std::string result;
        result.reserve(str.size());

        for (boost::string_ref::const_iterator it = str.begin();
            it != str.end(); ++it)
        {
            switch (*it)
            {
                case '<': result += "&lt;";    break;
                case '>': result += "&gt;";    break;
                case '&': result += "&amp;";   break;
                case '"': result += "&quot;";  break;
                default:  result += *it;       break;
            }
        }

        return result;
    }
开发者ID:OggYiu,项目名称:rag-engine,代码行数:20,代码来源:utils.cpp

示例9: file

 file(file const& f, boost::string_ref source) :
     path(f.path), source_(source.begin(), source.end()),
     is_code_snippets(f.is_code_snippets),
     qbk_version(f.qbk_version), ref_count(0)
 {}
开发者ID:AlexMioMio,项目名称:boost,代码行数:5,代码来源:files.hpp

示例10: operator

 auto operator()(boost::string_ref string) const
 {
   return boost::hash_range(string.begin(), string.end());
 }
开发者ID:mnewhouse,项目名称:tselements,代码行数:4,代码来源:string_utilities.hpp

示例11: string

 inline std::string to_s(boost::string_ref x) {
     return std::string(x.begin(), x.end());
 }
开发者ID:,项目名称:,代码行数:3,代码来源:

示例12: escape_uri

 inline std::string escape_uri(boost::string_ref uri) {
     return escape_uri(std::string(uri.begin(), uri.end()));
 }
开发者ID:,项目名称:,代码行数:3,代码来源:

示例13: parse

url::
url(const boost::string_ref &ref)
    : m_string { ref.begin(), ref.end() }
{
    parse();
}
开发者ID:stream009,项目名称:libstream9,代码行数:6,代码来源:url.cpp

示例14: generic_to_path

 fs::path generic_to_path(boost::string_ref x)
 {
     return fs::path(x.begin(), x.end());
 }
开发者ID:Cabriter,项目名称:abelkhan,代码行数:4,代码来源:native_text.cpp

示例15: callout

 void syntax_highlight_actions::callout(parse_iterator, parse_iterator)
 {
     out << state.add_callout(qbk_value(state.current_file,
         marked_text.begin(), marked_text.end()));
     marked_text.clear();
 }
开发者ID:,项目名称:,代码行数:6,代码来源:


注:本文中的boost::string_ref::begin方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。