private void CreateSharingMode(CodeElementsParser.CallInputParameterContext parameter,
                                ref SyntaxProperty <ParameterSharingMode> mode)
 {
     if (parameter.REFERENCE() != null)
     {
         mode = CobolStatementsBuilder.CreateSyntaxProperty(ParameterSharingMode.ByReference,
                                                            parameter.REFERENCE());
     }
     else if (parameter.CONTENT() != null)
     {
         mode = CobolStatementsBuilder.CreateSyntaxProperty(ParameterSharingMode.ByContent, parameter.CONTENT());
     }
     else if (parameter.VALUE() != null)
     {
         mode = CobolStatementsBuilder.CreateSyntaxProperty(ParameterSharingMode.ByValue, parameter.VALUE());
     }
     else
     {
         var by = ParameterSharingMode.ByReference;
         if (mode != null)
         {
             by = mode.Value;
         }
         mode = new SyntaxProperty <ParameterSharingMode>(by, null);
     }
 }
 /// <summary>Initialization code run before parsing each new COBOL CodeElement</summary>
 public override void EnterCodeElement(CodeElementsParser.CodeElementContext context)
 {
     CodeElement = null;
     Context = null;
     CobolWordsBuilder = new CobolWordsBuilder(new Dictionary<Token, SymbolInformation>());
     CobolExpressionsBuilder = new CobolExpressionsBuilder(CobolWordsBuilder);
     CobolStatementsBuilder = new CobolStatementsBuilder(CobolWordsBuilder, CobolExpressionsBuilder);
 }