fn push_body(&mut self, b: Int, head: Int, c: &Clause) {
    self.push_cells1(b, c.neck, c.len, c.base);
    let l = c.hgs.len();
    self.gs_push_body.resize(l, -1);
    self.gs_push_body[0] = head;
    for k in 1 .. l {
      let cell = c.hgs[k];
      self.gs_push_body[k] = relocate(b, cell);
    }
  }
/**
  * copies and relocates body of clause at offset from heap to heap
  * while also placing head as the first element of array gs that
  * when returned contains references to the toplevel spine of the clause
  */
copies and relocates body of clause at offset from heap to heap
while also placing head as the first element of array gs that
when returned contains references to the toplevel spine of the clause
copies and relocates body of clause at offset from heap to heap while also placing head as the first element of array gs that when returned contains references to the toplevel spine of the clause
fn push_body(&mut self, b: Int, head: Int, c: &Clause) {
    self.push_cells1(b, c.neck, c.len, c.base);
    let l = c.hgs.len();
    self.gs_push_body.resize(l, -1);
    self.gs_push_body[0] = head;
    for k in 1 .. l {
      let cell = c.hgs[k];
      self.gs_push_body[k] = relocate(b, cell);
    }
  }
fn push_body ( & mut self , b : Int , head : Int , c : & Clause ) { self . push_cells1 ( b , c . neck , c . len , c . base ) ; let l = c . hgs . len ( ) ; self . gs_push_body . resize ( l , - 1 ) ; self . gs_push_body [ 0 ] = head ; for k in 1 .. l { let cell = c . hgs [ k ] ; self . gs_push_body [ k ] = relocate ( b , cell ) ; } }
copies and relocates body of clause at offset from heap to heap
 while also placing head as the first element of array gs that
 when returned contains references to the toplevel spine of the clause
copies and relocates body of clause at offset from heap to heap while also placing head as the first element of array gs that when returned contains references to the toplevel spine of the clause
&mut self
b
Int
head
Int
c
&Clause
&mut self
b
Int
head
Int
c
&Clause