Uploaded image for project: 'Daffodil'
  1. Daffodil
  2. DFDL-64

Eliminate excess use of functionals

XMLWordPrintableJSON

    • Icon: Task Task
    • Resolution: Fixed
    • Icon: Major Major
    • s1
    • None
    • None
    • None

      The processors use complex multi-argument apply methods. That is, a processor is a functional.

      This is unnecessary complexity that makes debugging hard, code hard to understand, etc.

      Instead of this signature:

      def apply(input:RollbackStream,node:Element,variables:VariableMap, namespaces:Namespaces,parentTerminators:List[Regex]):ProcessorResult

      This should be changed to

      def parse(start : ParseState): ParseResult

      A ParseState is an encapsulation of an input, environment of properties, variables, and so forth, but managed together.

      This task is related to another task DFDL-63 Consistent processing behavior. Likely those would both get implemented together. The motivations are somewhat independent, so two different issues are used.

              jchab Jessie Chab
              mbeckerle.dfdl Mike Beckerle
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated:
                Resolved: