Collapse boiler-plate LambdaContext iteration code

XMLWordPrintable

    • Type: Sub-task
    • Resolution: Unresolved
    • Priority: P4
    • tbd
    • Affects Version/s: None
    • Component/s: tools
    • generic
    • generic

      The boiler-plate code, repeated at least 7 times --

      - TranslationContext<?> localContext = context();
      - while (localContext != null) {
      - if (localContext.tree.hasTag(LAMBDA)) {
      - /** do something with **/ (LambdaTranslationContext)localContext
      - }
      - localContext = localContext.prev;
      - }


      + for (LambdaTranslationContext ctx = lambdaContext; ctx != null; ctx = ctx.enclosingLambda()) {
      + /** do something with **/ ctx
      + }

      or possibly take it higher level.

            Assignee:
            Unassigned
            Reporter:
            Robert Field (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: