bool TextFormat::UnSerialization(const string & data)
{
    this->Clear();

    stringstream ss;
    ss << data;

    string line;
    while(getline(ss, line))
    {
        vector<string> pos_vec;
        split_string_by_blank(line.c_str(), pos_vec);

        if(pos_vec.size() < 2)
            return false;

        Para * p_para = new Para();

        p_para->_offset = str_2_num(pos_vec[0]);
        p_para->_len = str_2_num(pos_vec[1]);

        m_para_vec.push_back(p_para);
    }

    return check_format_info(m_para_vec);
}
void TextFormat::Reset(const vector<string> & para_vec,
                       const vector<pair<size_t, size_t> > & pos_vec)
{
    assert( para_vec.size() == pos_vec.size() );

    vector<Para*> tmp_para_vec;

    for(size_t i=0; i<para_vec.size(); ++i)
    {
        Para * pr = new Para;
        pr->_content = para_vec[i];
        pr->_offset = pos_vec[i].first;
        pr->_len = pos_vec[i].second;

        tmp_para_vec.push_back(pr);
    }

    if(false == check_format_info(tmp_para_vec))
    {
        lerr << "Check format failed. m_para_vec will be zero." << endl;
        return;
    }

    this->Clear();
    m_para_vec = tmp_para_vec;
}
Exemple #3
0
void
check_function_format (tree attrs, int nargs, tree * argarray)
{
  tree a;
  for (a = attrs;
       a;
       ((contains_struct_check
	 ((a), (TS_COMMON), "../../git-master/gcc/c-family/c-format.c", 1002,
	  __FUNCTION__))->common.chain))
    {
      if (is_attribute_p
	  ("format",
	   ((tree_check
	     ((a), "../../git-master/gcc/c-family/c-format.c", 1004,
	      __FUNCTION__, (TREE_LIST)))->list.purpose)))
	{
	  function_format_info info;
	  {
	    tree params = (tree) __null;
	    check_format_info (&info, params);
	  }
	}
    }
}