code: func (g *Generator) writeStub() error {
  	f, err := os.Create(g.OutName)
  	if err != nil {
  		return err
  	}
  	defer f.Close()
  
  	if g.BuildTags != "" {
  		fmt.Fprintln(f, "// +build ", g.BuildTags)
  		fmt.Fprintln(f)
  	}
  	fmt.Fprintln(f, "// TEMPORARY AUTOGENERATED FILE: easyjson stub code to make the package")
  	fmt.Fprintln(f, "// compilable during generation.")
  	fmt.Fprintln(f)
  	fmt.Fprintln(f, "package ", g.PkgName)
  
  	if len(g.Types) > 0 {
  		fmt.Fprintln(f)
  		fmt.Fprintln(f, "import (")
  		fmt.Fprintln(f, `  "`+pkgWriter+`"`)
  		fmt.Fprintln(f, `  "`+pkgLexer+`"`)
  		fmt.Fprintln(f, ")")
  	}
  
  	sort.Strings(g.Types)
  	for _, t := range g.Types {
  		fmt.Fprintln(f)
  		if !g.NoStdMarshalers {
  			fmt.Fprintln(f, "func (", t, ") MarshalJSON() ([]byte, error) { return nil, nil }")
  			fmt.Fprintln(f, "func (*", t, ") UnmarshalJSON([]byte) error { return nil }")
  		}
  
  		fmt.Fprintln(f, "func (", t, ") MarshalEasyJSON(w *jwriter.Writer) {}")
  		fmt.Fprintln(f, "func (*", t, ") UnmarshalEasyJSON(l *jlexer.Lexer) {}")
  		fmt.Fprintln(f)
  		fmt.Fprintln(f, "type EasyJSON_exporter_"+t+" *"+t)
  	}
  	return nil
  }
docs: // writeStub outputs an initial stub for marshalers/unmarshalers so that the package
  // using marshalers/unmarshales compiles correctly for boostrapping code.