| 2149 | } |
| 2150 | |
| 2151 | void StockpileSettingsSerializer::read_refuse(color_ostream& out, DeserializeMode mode, const vector<string>& filters) { |
| 2152 | auto & prefuse = mSettings->refuse; |
| 2153 | read_category<StockpileSettings_RefuseSet>(out, "refuse", mode, |
| 2154 | std::bind(&StockpileSettings::has_refuse, mBuffer), |
| 2155 | std::bind(&StockpileSettings::refuse, mBuffer), |
| 2156 | mSettings->flags.whole, |
| 2157 | mSettings->flags.mask_refuse, |
| 2158 | [&]() { |
| 2159 | prefuse.fresh_raw_hide = false; |
| 2160 | prefuse.rotten_raw_hide = false; |
| 2161 | prefuse.type.clear(); |
| 2162 | prefuse.corpses.clear(); |
| 2163 | prefuse.body_parts.clear(); |
| 2164 | prefuse.skulls.clear(); |
| 2165 | prefuse.bones.clear(); |
| 2166 | prefuse.hair.clear(); |
| 2167 | prefuse.shells.clear(); |
| 2168 | prefuse.teeth.clear(); |
| 2169 | prefuse.horns.clear(); |
| 2170 | }, |
| 2171 | [&](bool all, char val) { |
| 2172 | auto & brefuse = mBuffer.refuse(); |
| 2173 | |
| 2174 | set_flag(out, "rawhide/fresh", filters, all, val, brefuse.fresh_raw_hide(), prefuse.fresh_raw_hide); |
| 2175 | set_flag(out, "rawhide/rotten", filters, all, val, brefuse.rotten_raw_hide(), prefuse.rotten_raw_hide); |
| 2176 | |
| 2177 | unserialize_list_item_type(out, "type", all, val, filters, refuse_type_is_allowed, |
| 2178 | [&](const size_t& idx) -> const string& { return brefuse.type(idx); }, |
| 2179 | brefuse.type_size(), prefuse.type); |
| 2180 | |
| 2181 | unserialize_list_creature(out, "corpses", all, val, filters, |
| 2182 | [&](const size_t& idx) -> const string& { return brefuse.corpses(idx); }, |
| 2183 | brefuse.corpses_size(), prefuse.corpses); |
| 2184 | unserialize_list_creature(out, "bodyparts", all, val, filters, |
| 2185 | [&](const size_t& idx) -> const string& { return brefuse.body_parts(idx); }, |
| 2186 | brefuse.body_parts_size(), prefuse.body_parts); |
| 2187 | unserialize_list_creature(out, "skulls", all, val, filters, |
| 2188 | [&](const size_t& idx) -> const string& { return brefuse.skulls(idx); }, |
| 2189 | brefuse.skulls_size(), prefuse.skulls); |
| 2190 | unserialize_list_creature(out, "bones", all, val, filters, |
| 2191 | [&](const size_t& idx) -> const string& { return brefuse.bones(idx); }, |
| 2192 | brefuse.bones_size(), prefuse.bones); |
| 2193 | unserialize_list_creature(out, "hair", all, val, filters, |
| 2194 | [&](const size_t& idx) -> const string& { return brefuse.hair(idx); }, |
| 2195 | brefuse.hair_size(), prefuse.hair); |
| 2196 | unserialize_list_creature(out, "shells", all, val, filters, |
| 2197 | [&](const size_t& idx) -> const string& { return brefuse.shells(idx); }, |
| 2198 | brefuse.shells_size(), prefuse.shells); |
| 2199 | unserialize_list_creature(out, "teeth", all, val, filters, |
| 2200 | [&](const size_t& idx) -> const string& { return brefuse.teeth(idx); }, |
| 2201 | brefuse.teeth_size(), prefuse.teeth); |
| 2202 | unserialize_list_creature(out, "horns", all, val, filters, |
| 2203 | [&](const size_t& idx) -> const string& { return brefuse.horns(idx); }, |
| 2204 | brefuse.horns_size(), prefuse.horns); |
| 2205 | }); |
| 2206 | |
| 2207 | } |
| 2208 |
nothing calls this directly
no test coverage detected