Menu

#365 Improve procedure library

v1.1.x
closed
None
v1.1.1
Change Request
2018-11-18
2018-08-08
Erik Hänel
No

Improve the procedure library in the following way:

  • the procedure flags shall be stored, so that they are evaluated fastly
  • define the bitflags of the procedure flags in the procedure library
  • a bytecode indicating the type of the current line shall be stored, so that procedures only have to be parsed once

Analysis:

This requires many in-depth changes in the procedure.cpp file as well as creating a new class ProcedureCommandLine, which will gather the information available for each command line.

Implementation:

  • Implementation: There were many in-depth changes as already mentioned by the analysis. Also a reasonable error handling for the possible stack overflow was implemented in addition to a larger stack than the default value of 2 MB and a template flag for procedures, which will indicate that a procedure shall be able to handle different variable types.
  • Revision: [r408]
  • Implementation test: The standard SW test was runned multiple times until all deviations were fixed.

Documentation:

  • ChangesLog: updated
  • Comments: The changed functions were commented sufficiently.
  • Documentation articles: updated correspondingly
  • Language files: updated correspondingly

Tests:

This change was tested as thoroughly as even possible. No deviation occured.

Related

Commit: [r408]

Discussion

  • Erik Hänel

    Erik Hänel - 2018-08-08
    • status: open --> accepted
     
  • Erik Hänel

    Erik Hänel - 2018-09-11
    • Description has changed:

    Diff:

    --- old
    +++ new
    @@ -3,3 +3,20 @@
    
     * the procedure flags shall be stored, so that they are evaluated fastly
     * define the bitflags of the procedure flags in the procedure library
     * a bytecode indicating the type of the current line shall be stored, so that procedures only have to be parsed once
    +
    +###Analysis:
    +(*Describe, what's the issue and which changes have to be made*)
    +
    +###Implementation:
    +* Implementation: (*Describe, what you've changed*) 
    +* Revision: [rXXX]
    +* Implementation test: (*Describe the type of test, which you performed, and if it was successful*)
    +
    +###Documentation:
    +* ChangesLog: (*Have you updated the changes log?*)
    +* Comments: (*Have you written comments in the code, which describe your change?*)
    +* Documentation articles: (*Have you updated the documentation articles?*)
    +* Language files: (*Have you updated the language files?*)
    +
    +###Tests:
    +(*Describe, which tests you performed and their outcome*)
    
    • status: accepted --> analyzing
     
  • Erik Hänel

    Erik Hänel - 2018-10-31
    • Description has changed:

    Diff:

    --- old
    +++ new
    @@ -5,7 +5,7 @@
    
     * a bytecode indicating the type of the current line shall be stored, so that procedures only have to be parsed once
    
     ###Analysis:
    -(*Describe, what's the issue and which changes have to be made*)
    +This requires many in-depth changes in the `procedure.cpp` file as well as creating a new class `ProcedureCommandLine`, which will gather the information available for each command line.
    
     ###Implementation:
    
     * Implementation: (*Describe, what you've changed*) 
    
    • status: analyzing --> implementing
     
  • Erik Hänel

    Erik Hänel - 2018-11-08
    • Description has changed:

    Diff:

    --- old
    +++ new
    @@ -8,15 +8,15 @@
     This requires many in-depth changes in the `procedure.cpp` file as well as creating a new class `ProcedureCommandLine`, which will gather the information available for each command line.
    
     ###Implementation:
    -* Implementation: (*Describe, what you've changed*) 
    -* Revision: [rXXX]
    -* Implementation test: (*Describe the type of test, which you performed, and if it was successful*)
    +* Implementation: There were many in-depth changes as already mentioned by the analysis. Also a reasonable error handling for the possible stack overflow was implemented in addition to a larger stack than the default value of 2 MB and a `template` flag for procedures, which will indicate that a procedure shall be able to handle different variable types.
    +* Revision: [r408]
    +* Implementation test: The standard SW test was runned multiple times until all deviations were fixed.
    
     ###Documentation:
    -* ChangesLog: (*Have you updated the changes log?*)
    -* Comments: (*Have you written comments in the code, which describe your change?*)
    -* Documentation articles: (*Have you updated the documentation articles?*)
    -* Language files: (*Have you updated the language files?*)
    +* ChangesLog: updated
    +* Comments: The changed functions were commented sufficiently.
    +* Documentation articles: updated correspondingly
    +* Language files: updated correspondingly
    
     ###Tests:
     (*Describe, which tests you performed and their outcome*)
    
    • status: implementing --> testing
     

    Related

    Commit: [r408]

  • Erik Hänel

    Erik Hänel - 2018-11-18
    • Description has changed:

    Diff:

    --- old
    +++ new
    @@ -19,4 +19,4 @@
    
     * Language files: updated correspondingly
    
     ###Tests:
    -(*Describe, which tests you performed and their outcome*)
    +This change was tested as thoroughly as even possible. No deviation occured.
    
    • status: testing --> closed
     

Anonymous
Anonymous

Add attachments
Cancel





MongoDB Logo MongoDB