public new string ToString(bool bUseToString) { if (NumericValue != null) { return(NumericValue.Value.ToString()); } try { if (SymbolReference != null) { return(bUseToString ? SymbolReference.ToString() : SymbolReference.Name); } if (StorageArea != null) { return(bUseToString ? StorageArea.SymbolReference.ToString() : StorageArea.SymbolReference.Name); } //these should be: return XXXValue.GetValueInContext(???); if (AlphanumericValue != null) { return(AlphanumericValue.Token.SourceText); } if (RepeatedCharacterValue != null) { return(RepeatedCharacterValue.Token.SourceText); } } catch (System.InvalidOperationException) { } return(base.ToString()); }
public virtual string ToString(bool bUseToString, bool isBoolType) { if (NumericValue != null) { return(NumericValue.Value.ToString()); } try { if (SymbolReference != null) { return(bUseToString ? SymbolReference.ToString(isBoolType) : (SymbolReference.Name + (isBoolType ? "-value" : ""))); } if (StorageArea != null) { var qualifiedName = StorageArea?.SymbolReference?.ToString(isBoolType); if (StorageArea is DataOrConditionStorageArea && ((DataOrConditionStorageArea)StorageArea).Subscripts.Count > 0) { var subscript = ((DataOrConditionStorageArea)StorageArea).ToString(true); qualifiedName = qualifiedName + " " + subscript; } return(bUseToString ? qualifiedName : StorageArea?.SymbolReference?.Name + (isBoolType ? "-value" : "")); } //these should be: return XXXValue.GetValueInContext(???); if (AlphanumericValue != null) { return(AlphanumericValue.Token.SourceText); } if (RepeatedCharacterValue != null) { return(RepeatedCharacterValue.Token.SourceText); } } catch (System.InvalidOperationException) { } return(base.ToString()); }
public override string ToString() { if (SymbolReference != null) { return(SymbolReference.ToString()); } return(base.ToString()); }
public virtual string ToString(bool bUseToString, bool isBoolType) { if (NumericValue != null) { return(NumericValue.Value.ToString()); } try { if (SymbolReference != null) { return(bUseToString ? SymbolReference.ToString(isBoolType) : (SymbolReference.Name + (isBoolType ? "-value" : ""))); } if (StorageArea != null) { var qualifiedName = StorageArea?.GetStorageAreaThatNeedDeclaration?.SymbolReference?.ToString(isBoolType); if (StorageArea is DataOrConditionStorageArea && ((DataOrConditionStorageArea)StorageArea).Subscripts.Count > 0) { var subscript = ((DataOrConditionStorageArea)StorageArea).ToString(true); qualifiedName = qualifiedName + " " + subscript; } var specialRegisterStorageArea = StorageArea as StorageAreaPropertySpecialRegister; if (specialRegisterStorageArea != null) //If it's a specialRegister (LENGTH OF / ADDRESS OF) we need to had it to the output string { if (specialRegisterStorageArea.SpecialRegisterName.TokenType == TokenType.ADDRESS) { qualifiedName = "address of " + qualifiedName; } else if (specialRegisterStorageArea.SpecialRegisterName.TokenType == TokenType.LENGTH) { qualifiedName = "length of " + qualifiedName; } } return(bUseToString ? qualifiedName : StorageArea?.SymbolReference?.Name + (isBoolType ? "-value" : "")); } //these should be: return XXXValue.GetValueInContext(???); if (AlphanumericValue != null) { return(AlphanumericValue.Token.SourceText); } if (RepeatedCharacterValue != null) { return(RepeatedCharacterValue.Token.SourceText); } } catch (System.InvalidOperationException) { } return(base.ToString()); }
public FilePropertySpecialRegister(Token specialRegisterName, SymbolReference fileNameReference) : base(StorageAreaKind.FilePropertySpecialRegister) { SpecialRegisterName = specialRegisterName; FileNameReference = fileNameReference; // This is both a storage area definition and a reference to the same storage area DataDescriptionEntry = new SpecialRegisterDescriptionEntry(specialRegisterName, fileNameReference.ToString()); SymbolReference = new SymbolReference(DataDescriptionEntry.DataName); }
public FilePropertySpecialRegister(Token specialRegisterName, [NotNull] SymbolReference fileNameReference) : base(StorageAreaKind.FilePropertySpecialRegister) { SpecialRegisterName = specialRegisterName; FileNameReference = fileNameReference; // This is both a storage area definition and a reference to the same storage area DataDescriptionEntry = new SpecialRegisterDescriptionEntry(specialRegisterName, fileNameReference.ToString()); SymbolReference = new SymbolReference(DataDescriptionEntry.DataName); }