diff --git a/includes/handlers.inc b/includes/handlers.inc
index 2fc0f9b90a963d32a9837a778622f297f28a0619..d91d7b74731f621c8c7ffc2488cc37b46c7a4443 100644
--- a/includes/handlers.inc
+++ b/includes/handlers.inc
@@ -117,320 +117,6 @@ function views_get_table_join($table, $base_table) {
   vpr("Missing join: @table @base_table", array('@table' => $table, '@base_table' => $base_table));
 }
 
-/**
- * This many to one helper object is used on both arguments and filters.
- *
- * @todo This requires extensive documentation on how this class is to
- * be used. For now, look at the arguments and filters that use it. Lots
- * of stuff is just pass-through but there are definitely some interesting
- * areas where they interact.
- *
- * Any handler that uses this can have the following possibly additional
- * definition terms:
- * - numeric: If true, treat this field as numeric, using %d instead of %s in
- *            queries.
- *
- */
-class views_many_to_one_helper {
-  function views_many_to_one_helper(&$handler) {
-    $this->handler = &$handler;
-  }
-
-  static function option_definition(&$options) {
-    $options['reduce_duplicates'] = array('default' => FALSE, 'bool' => TRUE);
-  }
-
-  function options_form(&$form, &$form_state) {
-    $form['reduce_duplicates'] = array(
-      '#type' => 'checkbox',
-      '#title' => t('Reduce duplicates'),
-      '#description' => t('This filter can cause items that have more than one of the selected options to appear as duplicate results. If this filter causes duplicate results to occur, this checkbox can reduce those duplicates; however, the more terms it has to search for, the less performant the query will be, so use this with caution. Shouldn\'t be set on single-value fields, as it may cause values to disappear from display, if used on an incompatible field.'),
-      '#default_value' => !empty($this->handler->options['reduce_duplicates']),
-      '#weight' => 4,
-    );
-  }
-
-  /**
-   * Sometimes the handler might want us to use some kind of formula, so give
-   * it that option. If it wants us to do this, it must set $helper->formula = TRUE
-   * and implement handler->get_formula();
-   */
-  function get_field() {
-    if (!empty($this->formula)) {
-      return $this->handler->get_formula();
-    }
-    else {
-      return $this->handler->table_alias . '.' . $this->handler->real_field;
-    }
-  }
-
-  /**
-   * Add a table to the query.
-   *
-   * This is an advanced concept; not only does it add a new instance of the table,
-   * but it follows the relationship path all the way down to the relationship
-   * link point and adds *that* as a new relationship and then adds the table to
-   * the relationship, if necessary.
-   */
-  function add_table($join = NULL, $alias = NULL) {
-    // This is used for lookups in the many_to_one table.
-    $field = $this->handler->relationship . '_' . $this->handler->table . '.' . $this->handler->field;
-
-    if (empty($join)) {
-      $join = $this->get_join();
-    }
-
-    // See if there's a chain between us and the base relationship. If so, we need
-    // to create a new relationship to use.
-    $relationship = $this->handler->relationship;
-
-    // Determine the primary table to seek
-    if (empty($this->handler->query->relationships[$relationship])) {
-      $base_table = $this->handler->query->base_table;
-    }
-    else {
-      $base_table = $this->handler->query->relationships[$relationship]['base'];
-    }
-
-    // Cycle through the joins. This isn't as error-safe as the normal
-    // ensure_path logic. Perhaps it should be.
-    $r_join = clone $join;
-    while ($r_join->left_table != $base_table) {
-      $r_join = views_get_table_join($r_join->left_table, $base_table);
-    }
-    // If we found that there are tables in between, add the relationship.
-    if ($r_join->table != $join->table) {
-      $relationship = $this->handler->query->add_relationship($this->handler->table . '_' . $r_join->table, $r_join, $r_join->table, $this->handler->relationship);
-    }
-
-    // And now add our table, using the new relationship if one was used.
-    $alias = $this->handler->query->add_table($this->handler->table, $relationship, $join, $alias);
-
-    // Store what values are used by this table chain so that other chains can
-    // automatically discard those values.
-    if (empty($this->handler->view->many_to_one_tables[$field])) {
-      $this->handler->view->many_to_one_tables[$field] = $this->handler->value;
-    }
-    else {
-      $this->handler->view->many_to_one_tables[$field] = array_merge($this->handler->view->many_to_one_tables[$field], $this->handler->value);
-    }
-
-    return $alias;
-  }
-
-  function get_join() {
-    return $this->handler->get_join();
-  }
-
-  /**
-   * Provide the proper join for summary queries. This is important in part because
-   * it will cooperate with other arguments if possible.
-   */
-  function summary_join() {
-    $field = $this->handler->relationship . '_' . $this->handler->table . '.' . $this->handler->field;
-    $join = $this->get_join();
-
-    // shortcuts
-    $options = $this->handler->options;
-    $view = &$this->handler->view;
-    $query = &$this->handler->query;
-
-    if (!empty($options['require_value'])) {
-      $join->type = 'INNER';
-    }
-
-    if (empty($options['add_table']) || empty($view->many_to_one_tables[$field])) {
-      return $query->ensure_table($this->handler->table, $this->handler->relationship, $join);
-    }
-    else {
-      if (!empty($view->many_to_one_tables[$field])) {
-        foreach ($view->many_to_one_tables[$field] as $value) {
-          $join->extra = array(
-            array(
-              'field' => $this->handler->real_field,
-              'operator' => '!=',
-              'value' => $value,
-              'numeric' => !empty($this->definition['numeric']),
-            ),
-          );
-        }
-      }
-      return $this->add_table($join);
-    }
-  }
-
-  /**
-   * Override ensure_my_table so we can control how this joins in.
-   * The operator actually has influence over joining.
-   */
-  function ensure_my_table() {
-    if (!isset($this->handler->table_alias)) {
-      // Case 1: Operator is an 'or' and we're not reducing duplicates.
-      // We hence get the absolute simplest:
-      $field = $this->handler->relationship . '_' . $this->handler->table . '.' . $this->handler->field;
-      if ($this->handler->operator == 'or' && empty($this->handler->options['reduce_duplicates'])) {
-        if (empty($this->handler->options['add_table']) && empty($this->handler->view->many_to_one_tables[$field])) {
-          // query optimization, INNER joins are slightly faster, so use them
-          // when we know we can.
-          $join = $this->get_join();
-          if (isset($join)) {
-            $join->type = 'INNER';
-          }
-          $this->handler->table_alias = $this->handler->query->ensure_table($this->handler->table, $this->handler->relationship, $join);
-          $this->handler->view->many_to_one_tables[$field] = $this->handler->value;
-        }
-        else {
-          $join = $this->get_join();
-          $join->type = 'LEFT';
-          if (!empty($this->handler->view->many_to_one_tables[$field])) {
-            foreach ($this->handler->view->many_to_one_tables[$field] as $value) {
-              $join->extra = array(
-                array(
-                  'field' => $this->handler->real_field,
-                  'operator' => '!=',
-                  'value' => $value,
-                  'numeric' => !empty($this->handler->definition['numeric']),
-                ),
-              );
-            }
-          }
-
-          $this->handler->table_alias = $this->add_table($join);
-        }
-
-        return $this->handler->table_alias;
-      }
-
-      // Case 2: it's an 'and' or an 'or'.
-      // We do one join per selected value.
-      if ($this->handler->operator != 'not') {
-        // Clone the join for each table:
-        $this->handler->table_aliases = array();
-        foreach ($this->handler->value as $value) {
-          $join = $this->get_join();
-          if ($this->handler->operator == 'and') {
-            $join->type = 'INNER';
-          }
-          $join->extra = array(
-            array(
-              'field' => $this->handler->real_field,
-              'value' => $value,
-              'numeric' => !empty($this->handler->definition['numeric']),
-            ),
-          );
-
-          // The table alias needs to be unique to this value across the
-          // multiple times the filter or argument is called by the view.
-          if (!isset($this->handler->view->many_to_one_aliases[$field][$value])) {
-            if (!isset($this->handler->view->many_to_one_count[$this->handler->table])) {
-              $this->handler->view->many_to_one_count[$this->handler->table] = 0;
-            }
-            $this->handler->view->many_to_one_aliases[$field][$value] = $this->handler->table . '_value_' . ($this->handler->view->many_to_one_count[$this->handler->table]++);
-          }
-          $alias = $this->handler->table_aliases[$value] = $this->add_table($join, $this->handler->view->many_to_one_aliases[$field][$value]);
-
-          // and set table_alias to the first of these.
-          if (empty($this->handler->table_alias)) {
-            $this->handler->table_alias = $alias;
-          }
-        }
-      }
-      // Case 3: it's a 'not'.
-      // We just do one join. We'll add a where clause during
-      // the query phase to ensure that $table.$field IS NULL.
-      else {
-        $join = $this->get_join();
-        $join->type = 'LEFT';
-        $join->extra = array();
-        $join->extra_type = 'OR';
-        foreach ($this->handler->value as $value) {
-          $join->extra[] = array(
-            'field' => $this->handler->real_field,
-            'value' => $value,
-            'numeric' => !empty($this->handler->definition['numeric']),
-          );
-        }
-
-        $this->handler->table_alias = $this->add_table($join);
-      }
-    }
-    return $this->handler->table_alias;
-  }
-
-  /**
-   * Provides a unique placeholders for handlers.
-   */
-  function placeholder() {
-    return $this->handler->query->placeholder($this->handler->options['table'] . '_' . $this->handler->options['field']);
-  }
-
-  function add_filter() {
-    if (empty($this->handler->value)) {
-      return;
-    }
-    $this->handler->ensure_my_table();
-
-    // Shorten some variables:
-    $field = $this->get_field();
-    $options = $this->handler->options;
-    $operator = $this->handler->operator;
-    $formula = !empty($this->formula);
-    $value = $this->handler->value;
-    if (empty($options['group'])) {
-      $options['group'] = 0;
-    }
-
-    // add_condition determines whether a single expression is enough(FALSE) or the
-    // conditions should be added via an db_or()/db_and() (TRUE).
-    $add_condition = TRUE;
-    if ($operator == 'not') {
-      $value = NULL;
-      $operator = 'IS NULL';
-      $add_condition = FALSE;
-    }
-    elseif ($operator == 'or' && empty($options['reduce_duplicates'])) {
-      if (count($value) > 1) {
-        $operator = 'IN';
-      }
-      else {
-        $value = is_array($value) ? array_pop($value) : $value;
-        $operator = '=';
-      }
-      $add_condition = FALSE;
-    }
-
-    if (!$add_condition) {
-      if ($formula) {
-        $placeholder = $this->placeholder();
-        if ($operator == 'IN') {
-          $operator = "$operator IN($placeholder)";
-        }
-        else {
-          $operator = "$operator $placeholder";
-        }
-        $placeholders = array(
-          $placeholder => $value,
-        ) + $this->placeholders;
-        $this->handler->query->add_where_expression($options['group'], "$field $operator", $placeholders);
-      }
-      else {
-        $this->handler->query->add_where($options['group'], $field, $value, $operator);
-      }
-    }
-
-    if ($add_condition) {
-      $field = $this->handler->real_field;
-      $clause = $operator == 'or' ? db_or() : db_and();
-      foreach ($this->handler->table_aliases as $value => $alias) {
-        $clause->condition("$alias.$field", $value);
-      }
-
-      // implode on either AND or OR.
-      $this->handler->query->add_where($options['group'], $clause);
-    }
-  }
-}
-
 /**
  * Break x,y,z and x+y+z into an array. Works for strings.
  *
diff --git a/lib/Drupal/views/ManyToOneHelper.php b/lib/Drupal/views/ManyToOneHelper.php
new file mode 100644
index 0000000000000000000000000000000000000000..eb252575d9760726ed9fe450e60f8736c1fd67f6
--- /dev/null
+++ b/lib/Drupal/views/ManyToOneHelper.php
@@ -0,0 +1,319 @@
+<?php
+
+namespace Drupal\views;
+
+/**
+ * This many to one helper object is used on both arguments and filters.
+ *
+ * @todo This requires extensive documentation on how this class is to
+ * be used. For now, look at the arguments and filters that use it. Lots
+ * of stuff is just pass-through but there are definitely some interesting
+ * areas where they interact.
+ *
+ * Any handler that uses this can have the following possibly additional
+ * definition terms:
+ * - numeric: If true, treat this field as numeric, using %d instead of %s in
+ *            queries.
+ *
+ */
+class ManyToOneHelper {
+
+  function __construct($handler) {
+    $this->handler = $handler;
+  }
+
+  static function option_definition(&$options) {
+    $options['reduce_duplicates'] = array('default' => FALSE, 'bool' => TRUE);
+  }
+
+  function options_form(&$form, &$form_state) {
+    $form['reduce_duplicates'] = array(
+      '#type' => 'checkbox',
+      '#title' => t('Reduce duplicates'),
+      '#description' => t('This filter can cause items that have more than one of the selected options to appear as duplicate results. If this filter causes duplicate results to occur, this checkbox can reduce those duplicates; however, the more terms it has to search for, the less performant the query will be, so use this with caution. Shouldn\'t be set on single-value fields, as it may cause values to disappear from display, if used on an incompatible field.'),
+      '#default_value' => !empty($this->handler->options['reduce_duplicates']),
+      '#weight' => 4,
+    );
+  }
+
+  /**
+   * Sometimes the handler might want us to use some kind of formula, so give
+   * it that option. If it wants us to do this, it must set $helper->formula = TRUE
+   * and implement handler->get_formula();
+   */
+  function get_field() {
+    if (!empty($this->formula)) {
+      return $this->handler->get_formula();
+    }
+    else {
+      return $this->handler->table_alias . '.' . $this->handler->real_field;
+    }
+  }
+
+  /**
+   * Add a table to the query.
+   *
+   * This is an advanced concept; not only does it add a new instance of the table,
+   * but it follows the relationship path all the way down to the relationship
+   * link point and adds *that* as a new relationship and then adds the table to
+   * the relationship, if necessary.
+   */
+  function add_table($join = NULL, $alias = NULL) {
+    // This is used for lookups in the many_to_one table.
+    $field = $this->handler->relationship . '_' . $this->handler->table . '.' . $this->handler->field;
+
+    if (empty($join)) {
+      $join = $this->get_join();
+    }
+
+    // See if there's a chain between us and the base relationship. If so, we need
+    // to create a new relationship to use.
+    $relationship = $this->handler->relationship;
+
+    // Determine the primary table to seek
+    if (empty($this->handler->query->relationships[$relationship])) {
+      $base_table = $this->handler->query->base_table;
+    }
+    else {
+      $base_table = $this->handler->query->relationships[$relationship]['base'];
+    }
+
+    // Cycle through the joins. This isn't as error-safe as the normal
+    // ensure_path logic. Perhaps it should be.
+    $r_join = clone $join;
+    while ($r_join->left_table != $base_table) {
+      $r_join = views_get_table_join($r_join->left_table, $base_table);
+    }
+    // If we found that there are tables in between, add the relationship.
+    if ($r_join->table != $join->table) {
+      $relationship = $this->handler->query->add_relationship($this->handler->table . '_' . $r_join->table, $r_join, $r_join->table, $this->handler->relationship);
+    }
+
+    // And now add our table, using the new relationship if one was used.
+    $alias = $this->handler->query->add_table($this->handler->table, $relationship, $join, $alias);
+
+    // Store what values are used by this table chain so that other chains can
+    // automatically discard those values.
+    if (empty($this->handler->view->many_to_one_tables[$field])) {
+      $this->handler->view->many_to_one_tables[$field] = $this->handler->value;
+    }
+    else {
+      $this->handler->view->many_to_one_tables[$field] = array_merge($this->handler->view->many_to_one_tables[$field], $this->handler->value);
+    }
+
+    return $alias;
+  }
+
+  function get_join() {
+    return $this->handler->get_join();
+  }
+
+  /**
+   * Provide the proper join for summary queries. This is important in part because
+   * it will cooperate with other arguments if possible.
+   */
+  function summary_join() {
+    $field = $this->handler->relationship . '_' . $this->handler->table . '.' . $this->handler->field;
+    $join = $this->get_join();
+
+    // shortcuts
+    $options = $this->handler->options;
+    $view = &$this->handler->view;
+    $query = &$this->handler->query;
+
+    if (!empty($options['require_value'])) {
+      $join->type = 'INNER';
+    }
+
+    if (empty($options['add_table']) || empty($view->many_to_one_tables[$field])) {
+      return $query->ensure_table($this->handler->table, $this->handler->relationship, $join);
+    }
+    else {
+      if (!empty($view->many_to_one_tables[$field])) {
+        foreach ($view->many_to_one_tables[$field] as $value) {
+          $join->extra = array(
+            array(
+              'field' => $this->handler->real_field,
+              'operator' => '!=',
+              'value' => $value,
+              'numeric' => !empty($this->definition['numeric']),
+            ),
+          );
+        }
+      }
+      return $this->add_table($join);
+    }
+  }
+
+  /**
+   * Override ensure_my_table so we can control how this joins in.
+   * The operator actually has influence over joining.
+   */
+  function ensure_my_table() {
+    if (!isset($this->handler->table_alias)) {
+      // Case 1: Operator is an 'or' and we're not reducing duplicates.
+      // We hence get the absolute simplest:
+      $field = $this->handler->relationship . '_' . $this->handler->table . '.' . $this->handler->field;
+      if ($this->handler->operator == 'or' && empty($this->handler->options['reduce_duplicates'])) {
+        if (empty($this->handler->options['add_table']) && empty($this->handler->view->many_to_one_tables[$field])) {
+          // query optimization, INNER joins are slightly faster, so use them
+          // when we know we can.
+          $join = $this->get_join();
+          if (isset($join)) {
+            $join->type = 'INNER';
+          }
+          $this->handler->table_alias = $this->handler->query->ensure_table($this->handler->table, $this->handler->relationship, $join);
+          $this->handler->view->many_to_one_tables[$field] = $this->handler->value;
+        }
+        else {
+          $join = $this->get_join();
+          $join->type = 'LEFT';
+          if (!empty($this->handler->view->many_to_one_tables[$field])) {
+            foreach ($this->handler->view->many_to_one_tables[$field] as $value) {
+              $join->extra = array(
+                array(
+                  'field' => $this->handler->real_field,
+                  'operator' => '!=',
+                  'value' => $value,
+                  'numeric' => !empty($this->handler->definition['numeric']),
+                ),
+              );
+            }
+          }
+
+          $this->handler->table_alias = $this->add_table($join);
+        }
+
+        return $this->handler->table_alias;
+      }
+
+      // Case 2: it's an 'and' or an 'or'.
+      // We do one join per selected value.
+      if ($this->handler->operator != 'not') {
+        // Clone the join for each table:
+        $this->handler->table_aliases = array();
+        foreach ($this->handler->value as $value) {
+          $join = $this->get_join();
+          if ($this->handler->operator == 'and') {
+            $join->type = 'INNER';
+          }
+          $join->extra = array(
+            array(
+              'field' => $this->handler->real_field,
+              'value' => $value,
+              'numeric' => !empty($this->handler->definition['numeric']),
+            ),
+          );
+
+          // The table alias needs to be unique to this value across the
+          // multiple times the filter or argument is called by the view.
+          if (!isset($this->handler->view->many_to_one_aliases[$field][$value])) {
+            if (!isset($this->handler->view->many_to_one_count[$this->handler->table])) {
+              $this->handler->view->many_to_one_count[$this->handler->table] = 0;
+            }
+            $this->handler->view->many_to_one_aliases[$field][$value] = $this->handler->table . '_value_' . ($this->handler->view->many_to_one_count[$this->handler->table]++);
+          }
+          $alias = $this->handler->table_aliases[$value] = $this->add_table($join, $this->handler->view->many_to_one_aliases[$field][$value]);
+
+          // and set table_alias to the first of these.
+          if (empty($this->handler->table_alias)) {
+            $this->handler->table_alias = $alias;
+          }
+        }
+      }
+      // Case 3: it's a 'not'.
+      // We just do one join. We'll add a where clause during
+      // the query phase to ensure that $table.$field IS NULL.
+      else {
+        $join = $this->get_join();
+        $join->type = 'LEFT';
+        $join->extra = array();
+        $join->extra_type = 'OR';
+        foreach ($this->handler->value as $value) {
+          $join->extra[] = array(
+            'field' => $this->handler->real_field,
+            'value' => $value,
+            'numeric' => !empty($this->handler->definition['numeric']),
+          );
+        }
+
+        $this->handler->table_alias = $this->add_table($join);
+      }
+    }
+    return $this->handler->table_alias;
+  }
+
+  /**
+   * Provides a unique placeholders for handlers.
+   */
+  function placeholder() {
+    return $this->handler->query->placeholder($this->handler->options['table'] . '_' . $this->handler->options['field']);
+  }
+
+  function add_filter() {
+    if (empty($this->handler->value)) {
+      return;
+    }
+    $this->handler->ensure_my_table();
+
+    // Shorten some variables:
+    $field = $this->get_field();
+    $options = $this->handler->options;
+    $operator = $this->handler->operator;
+    $formula = !empty($this->formula);
+    $value = $this->handler->value;
+    if (empty($options['group'])) {
+      $options['group'] = 0;
+    }
+
+    // add_condition determines whether a single expression is enough(FALSE) or the
+    // conditions should be added via an db_or()/db_and() (TRUE).
+    $add_condition = TRUE;
+    if ($operator == 'not') {
+      $value = NULL;
+      $operator = 'IS NULL';
+      $add_condition = FALSE;
+    }
+    elseif ($operator == 'or' && empty($options['reduce_duplicates'])) {
+      if (count($value) > 1) {
+        $operator = 'IN';
+      }
+      else {
+        $value = is_array($value) ? array_pop($value) : $value;
+        $operator = '=';
+      }
+      $add_condition = FALSE;
+    }
+
+    if (!$add_condition) {
+      if ($formula) {
+        $placeholder = $this->placeholder();
+        if ($operator == 'IN') {
+          $operator = "$operator IN($placeholder)";
+        }
+        else {
+          $operator = "$operator $placeholder";
+        }
+        $placeholders = array(
+          $placeholder => $value,
+        ) + $this->placeholders;
+        $this->handler->query->add_where_expression($options['group'], "$field $operator", $placeholders);
+      }
+      else {
+        $this->handler->query->add_where($options['group'], $field, $value, $operator);
+      }
+    }
+
+    if ($add_condition) {
+      $field = $this->handler->real_field;
+      $clause = $operator == 'or' ? db_or() : db_and();
+      foreach ($this->handler->table_aliases as $value => $alias) {
+        $clause->condition("$alias.$field", $value);
+      }
+
+      // implode on either AND or OR.
+      $this->handler->query->add_where($options['group'], $clause);
+    }
+  }
+
+}
diff --git a/lib/Drupal/views/Plugin/views/argument/Date.php b/lib/Drupal/views/Plugin/views/argument/Date.php
index f4375d2e8f060a493f5695c94be9efe3299d5d23..5189b9a44f246a960c8abeca2204522cb4a88332 100644
--- a/lib/Drupal/views/Plugin/views/argument/Date.php
+++ b/lib/Drupal/views/Plugin/views/argument/Date.php
@@ -23,7 +23,7 @@
  * - invalid input: A string to give to the user for obviously invalid input.
  *                  This is deprecated in favor of argument validators.
  *
- * @see views_many_to_one_helper()
+ * @see Drupal\views\ManyTonOneHelper
  *
  * @ingroup views_argument_handlers
  */
diff --git a/lib/Drupal/views/Plugin/views/argument/String.php b/lib/Drupal/views/Plugin/views/argument/String.php
index a60ae686d2323ee8a24473565385f42b1e2e3e45..0c150dbfa7b7c555d2e795bdd7eeb5e04fbcdb69 100644
--- a/lib/Drupal/views/Plugin/views/argument/String.php
+++ b/lib/Drupal/views/Plugin/views/argument/String.php
@@ -7,6 +7,7 @@
 
 namespace Drupal\views\Plugin\views\argument;
 
+use Drupal\views\ManyToOneHelper;
 use Drupal\Core\Annotation\Plugin;
 
 /**
@@ -25,7 +26,7 @@ class String extends ArgumentPluginBase {
   function init(&$view, &$options) {
     parent::init($view, $options);
     if (!empty($this->definition['many to one'])) {
-      $this->helper = new views_many_to_one_helper($this);
+      $this->helper = new ManyToOneHelper($this);
 
       // Ensure defaults for these, during summaries and stuff:
       $this->operator = 'or';
diff --git a/lib/Drupal/views/Plugin/views/filter/ManyToOne.php b/lib/Drupal/views/Plugin/views/filter/ManyToOne.php
index 284cf852325bb59dca91d73be50640c23ddc7b94..077fc0fa8c11540b452bc1a623429f2d0d328a79 100644
--- a/lib/Drupal/views/Plugin/views/filter/ManyToOne.php
+++ b/lib/Drupal/views/Plugin/views/filter/ManyToOne.php
@@ -7,6 +7,7 @@
 
 namespace Drupal\views\Plugin\views\filter;
 
+use Drupal\views\ManyToOneHelper;
 use Drupal\Core\Annotation\Plugin;
 
 /**
@@ -27,7 +28,7 @@
  */
 class ManyToOne extends InOperator {
   /**
-   * @var views_many_to_one_helper
+   * @var Drupal\views\ManyToOneHelper
    *
    * Stores the Helper object which handles the many_to_one complexity.
    */
@@ -35,7 +36,7 @@ class ManyToOne extends InOperator {
 
   function init(&$view, &$options) {
     parent::init($view, $options);
-    $this->helper = new views_many_to_one_helper($this);
+    $this->helper = new ManyToOneHelper($this);
   }
 
   function option_definition() {
@@ -48,7 +49,7 @@ function option_definition() {
       $this->helper->option_definition($options);
     }
     else {
-      $helper = new views_many_to_one_helper($this);
+      $helper = new ManyToOneHelper($this);
       $helper->option_definition($options);
     }