Doctrine Common
  1. Doctrine Common
  2. DCOM-46

Make annotation index configurable

    Details

    • Type: Improvement Improvement
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 2.1
    • Fix Version/s: 2.1
    • Component/s: Annotations
    • Labels:
      None

      Description

      So, this is another improvement that I'd like to make. Right now all annotations are indexed by their name which has the limitation that on the top level annotations with the same name are only gathered once.

      /**
       * @param mixed $a
       * @param mixed $a
       * @param mixed $a
       */
      function ($a, $b, $c) { }
      

      In the above case the annotation parser would only pick up one "param" annotation. My guess is that this was done for fast lookups, but I think we need to make this configurable (I know you hate this word ) as the workaround here is needlessly bloated.

      /**
       * @params({@param, @param, @param})
       */
      function($a, $b, $c) {}
      

      This only requires two lines to be changed/made conditional, see
      https://github.com/schmittjoh/SecurityExtraBundle/blob/master/Mapping/Driver/AnnotationParser.php#L63
      https://github.com/schmittjoh/SecurityExtraBundle/blob/master/Mapping/Driver/AnnotationParser.php#L72

      p.s. If you want me to provide a patch for this, just tell me.

        Activity

          People

          • Assignee:
            Guilherme Blanco
            Reporter:
            Johannes Schmitt
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: