whole_func_string: function setupReducerPersistence( reducer ) {
  	if ( reducer.hasCustomPersistence ) {
  		return reducer;
  	}
  
  	if ( reducer.schema ) {
  		return withSchemaValidation( reducer.schema, reducer );
  	}
  
  	return withoutPersistence( reducer );
  }
func_code_string: function setupReducerPersistence( reducer ) {
  	if ( reducer.hasCustomPersistence ) {
  		return reducer;
  	}
  
  	if ( reducer.schema ) {
  		return withSchemaValidation( reducer.schema, reducer );
  	}
  
  	return withoutPersistence( reducer );
  }
func_documentation_string: /*
  Wrap the reducer with appropriate persistence code. If it has the `hasCustomPersistence` flag,
  it means it's already set up and we don't need to make any changes.
  If the reducer has a `schema` property, it means that persistence is requested and we
  wrap it with code that validates the schema when loading persisted state.