git.delta.rocks / jrsonnet / refs/commits / 74729ec02fba

difftreelog

refactor move field sorting to visible_fields

Лач2020-07-02parent: #cee13e8.patch.diff
in: master

2 files changed

modifiedcrates/jrsonnet-evaluator/src/obj.rsdiffbeforeafterboth
86 Rc::try_unwrap(out).unwrap().into_inner()86 Rc::try_unwrap(out).unwrap().into_inner()
87 }87 }
88 pub fn visible_fields(&self) -> Vec<Rc<str>> {88 pub fn visible_fields(&self) -> Vec<Rc<str>> {
89 self.fields_visibility()89 let mut visible_fields: Vec<_> = self
90 .fields_visibility()
90 .into_iter()91 .into_iter()
91 .filter(|(_k, v)| *v)92 .filter(|(_k, v)| *v)
92 .map(|(k, _)| k)93 .map(|(k, _)| k)
93 .collect()94 .collect();
95 visible_fields.sort();
96 visible_fields
94 }97 }
95 pub fn get(&self, key: Rc<str>) -> Result<Option<Val>> {98 pub fn get(&self, key: Rc<str>) -> Result<Option<Val>> {
96 if let Some(v) = self.0.value_cache.borrow().get(&key) {99 if let Some(v) = self.0.value_cache.borrow().get(&key) {
modifiedcrates/jrsonnet-evaluator/src/val.rsdiffbeforeafterboth
255 }255 }
256 Val::Obj(obj) => {256 Val::Obj(obj) => {
257 buf.push_str("{\n");257 buf.push_str("{\n");
258 let mut fields = obj.visible_fields();258 let fields = obj.visible_fields();
259 fields.sort();
260 if !fields.is_empty() {259 if !fields.is_empty() {
261 let old_len = cur_padding.len();260 let old_len = cur_padding.len();
262 cur_padding.push_str(padding);261 cur_padding.push_str(padding);