code: func (r *printRun) FieldMask() (*field_mask.FieldMask, error) {
  	if r.id {
  		if r.all || r.properties || r.steps {
  			return nil, fmt.Errorf("-id is mutually exclusive with -A, -p and -steps")
  		}
  		return proto.Clone(idFieldMask).(*field_mask.FieldMask), nil
  	}
  
  	if r.all {
  		if r.properties || r.steps {
  			return nil, fmt.Errorf("-A is mutually exclusive with -p and -steps")
  		}
  		return proto.Clone(completeBuildFieldMask).(*field_mask.FieldMask), nil
  	}
  
  	ret := &field_mask.FieldMask{
  		Paths: []string{
  			"builder",
  			"create_time",
  			"created_by",
  			"end_time",
  			"id",
  			"input.experimental",
  			"input.gerrit_changes",
  			"input.gitiles_commit",
  			"number",
  			"start_time",
  			"status",
  			"status_details",
  			"summary_markdown",
  			"tags",
  			"update_time",
  		},
  	}
  
  	if r.properties {
  		ret.Paths = append(ret.Paths, "input.properties", "output.properties")
  	}
  
  	if r.steps {
  		ret.Paths = append(ret.Paths, "steps")
  	}
  
  	return ret, nil
  }
docs: // FieldMask returns the field mask to use in buildbucket requests.