fn generate_node_list(&mut self, ast: &Ast, nodes: &[NodeId]) -> Result<(), Error> {
      if nodes.is_empty() {
         let _ = self.generate_nil();
      } else {
         for (i, &node) in nodes.iter().enumerate() {
            self.generate_node(
               ast,
               node,
               if i != nodes.len() - 1 {
                  Expression::Discarded
               } else {
                  Expression::Used
               },
            )?;
         }
      }
      Ok(())
   }
/// Generates code for a list of nodes. The last node's value is the one left on the stack.
///
/// If there are no nodes in the list, this is equivalent to a `nil` literal.
Generates code for a list of nodes. The last node's value is the one left on the stack.
If there are no nodes in the list, this is equivalent to a `nil` literal.
Generates code for a list of nodes . The last node ' s value is the one left on the stack . If there are no nodes in the list this is equivalent to a ` nil ` literal .
fn generate_node_list(&mut self, ast: &Ast, nodes: &[NodeId]) -> Result<(), Error> {
      if nodes.is_empty() {
         let _ = self.generate_nil();
      } else {
         for (i, &node) in nodes.iter().enumerate() {
            self.generate_node(
               ast,
               node,
               if i != nodes.len() - 1 {
                  Expression::Discarded
               } else {
                  Expression::Used
               },
            )?;
         }
      }
      Ok(())
   }
fn generate_node_list ( & mut self , ast : & Ast , nodes : & [ NodeId ] ) -> Result < ( ) , Error > { if nodes . is_empty ( ) { let _ = self . generate_nil ( ) ; } else { for ( i , & node ) in nodes . iter ( ) . enumerate ( ) { self . generate_node ( ast , node , if i != nodes . len ( ) - 1 { Expression :: Discarded } else { Expression :: Used } , ) ? ; } } Ok ( ( ) ) }
Generates code for a list of nodes.
Generates code for a list of nodes .
&mut self
ast
&Ast
nodes
&[NodeId]