fn refresh_computed_info(&self, id: ExpressionId, force_type_info_refresh: bool) {
        let info = self.lookup_computed_info(&id);
        let info = info.as_ref();
        let typename = info.and_then(|info| info.typename.clone().map(graph_editor::Type));
        let node_id = self.node_view_by_expression.borrow().get(&id).cloned();
        if let Some(node_id) = node_id {
            self.set_type(node_id, id, typename, force_type_info_refresh);
            let method_pointer = info.and_then(|info| {
                info.method_call.and_then(|entry_id| {
                    let opt_method = self.project.suggestion_db().lookup_method_ptr(entry_id).ok();
                    opt_method.map(|method| graph_editor::MethodPointer(Rc::new(method)))
                })
            });
            self.set_method_pointer(id, method_pointer);
            if self.node_views.borrow().get_by_left(&id).contains(&&node_id) {
                let set_error_result = self.set_error(node_id, info.map(|info| &info.payload));
                if let Err(error) = set_error_result {
                    error!(self.logger, "Error when setting error on node: {error}");
                }
            }
        }
    }
/// Look up the computed information for a given expression and pass the information to the
/// graph editor view.
///
/// The computed value information includes the expression type and the target method pointer.
Look up the computed information for a given expression and pass the information to the
graph editor view.

The computed value information includes the expression type and the target method pointer.
Look up the computed information for a given expression and pass the information to the graph editor view . The computed value information includes the expression type and the target method pointer .
fn refresh_computed_info(&self, id: ExpressionId, force_type_info_refresh: bool) {
        let info = self.lookup_computed_info(&id);
        let info = info.as_ref();
        let typename = info.and_then(|info| info.typename.clone().map(graph_editor::Type));
        let node_id = self.node_view_by_expression.borrow().get(&id).cloned();
        if let Some(node_id) = node_id {
            self.set_type(node_id, id, typename, force_type_info_refresh);
            let method_pointer = info.and_then(|info| {
                info.method_call.and_then(|entry_id| {
                    let opt_method = self.project.suggestion_db().lookup_method_ptr(entry_id).ok();
                    opt_method.map(|method| graph_editor::MethodPointer(Rc::new(method)))
                })
            });
            self.set_method_pointer(id, method_pointer);
            if self.node_views.borrow().get_by_left(&id).contains(&&node_id) {
                let set_error_result = self.set_error(node_id, info.map(|info| &info.payload));
                if let Err(error) = set_error_result {
                    error!(self.logger, "Error when setting error on node: {error}");
                }
            }
        }
    }
fn refresh_computed_info ( & self , id : ExpressionId , force_type_info_refresh : bool ) { let info = self . lookup_computed_info ( & id ) ; let info = info . as_ref ( ) ; let typename = info . and_then ( | info | info . typename . clone ( ) . map ( graph_editor :: Type ) ) ; let node_id = self . node_view_by_expression . borrow ( ) . get ( & id ) . cloned ( ) ; if let Some ( node_id ) = node_id { self . set_type ( node_id , id , typename , force_type_info_refresh ) ; let method_pointer = info . and_then ( | info | { info . method_call . and_then ( | entry_id | { let opt_method = self . project . suggestion_db ( ) . lookup_method_ptr ( entry_id ) . ok ( ) ; opt_method . map ( | method | graph_editor :: MethodPointer ( Rc :: new ( method ) ) ) } ) } ) ; self . set_method_pointer ( id , method_pointer ) ; if self . node_views . borrow ( ) . get_by_left ( & id ) . contains ( & & node_id ) { let set_error_result = self . set_error ( node_id , info . map ( | info | & info . payload ) ) ; if let Err ( error ) = set_error_result { error ! ( self logger " " ) ; } } } }
Look up the computed information for a given expression and pass the information to the
graph editor view.
Look up the computed information for a given expression and pass the information to the graph editor view .
&self
id
ExpressionId
force_type_info_refresh
bool
&self
id
ExpressionId
force_type_info_refresh
bool