The table below describes the Component Maker Optimize extraction options.
Option | Language | Description |
---|---|---|
No changes | Cobol, Natural, RPG | Do not remove unused data items from the component. |
Preserve Original Paragraphs | Cobol | Generate paragraph labels even for paragraphs that are not actually used in the source code (for example, empty paragraphs
for which there are no PERFORMs).
Note: This option also affects refactoring. When the option is set, paragraphs in the same "basic block" are defragmented separately.
Otherwise, they are defragmented as a unit.
|
Remove Redundant NEXT SENTENCE | Cobol | Remove NEXT SENTENCE clauses by changing the bodies of corresponding IF statements, such that: IF A=1 NEXT SENTENCE ELSE ... END-IF. is generated as: IF NOT (A=1) ... END-IF. |
Remove/Replace Unused Fields with FILLERs | Cobol, Natural, RPG | Remove unused any-level structures and replace unused fields in a used structure with FILLERs. Set this option if removing
a field completely from a structure would adversely affect memory distribution.
Note: If you select Keep Legacy copybooks in the General component extraction options, Component Maker removes or replaces with
FILLERs only unused inline data items.
|
Remove Unreachable Code | Cobol, RPG | Remove unreachable procedural statements. |
Remove Unused Any-Level Structures | Cobol, Natural, RPG | Remove unused structures at any data level, if all their parents and children are unused. For the example below, D, E, F,
and G are removed: DEFINE DATA LOCAL 1 #A 2 #B 3 #C 2 #D 3 #E 3 #F 1 #G |
Remove Unused Level-1 Structures | Cobol, Natural, RPG | Remove only unused level-1 structures, and then only if all their children are unused. If, in the following example, only
B is used, only G is removed: DEFINE DATA LOCAL 1 #A 2 #B 3 #C 2 #D 3 #E 3 #F 1 #G |
Replace Section PERFORMs by Paragraph PERFORMs | Cobol | Replace PERFORM section statements by equivalent PERFORM paragraph statements. |
Roll-Up Nested IFs | Cobol | Roll up embedded IF statements in the top-level IF statement, such that: IF A=1 IF B=2 is generated as: IF (A=1) AND (B=2) |