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; }
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); } } } }