code: def build_and_pickle_dump(self, abivalidate=False):
          
          self.build()
          if not abivalidate: return self.pickle_dump()
  
          # Validation with Abinit.
          isok, errors = self.abivalidate_inputs()
          if isok: return self.pickle_dump()
          errlines = []
          for i, e in enumerate(errors):
              errlines.append("[%d] %s" % (i, e))
          raise ValueError("\n".join(errlines))
docs: Build dirs and file of the `Flow` and save the object in pickle format.
          Returns 0 if success
  
          Args:
              abivalidate: If True, all the input files are validate by calling
                  the abinit parser. If the validation fails, ValueError is raise.