Changeset 12495 for branches/GBT/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.4/Grammars/SymbolicExpressionTreeGrammar.cs
- Timestamp:
- 06/23/15 12:50:05 (10 years ago)
- Location:
- branches/GBT
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/GBT
- Property svn:mergeinfo changed
/trunk/sources merged: 12392-12393,12397-12401,12422,12424,12428-12435,12442-12443,12445,12455-12458,12461,12463-12465,12470-12476,12478-12482,12485,12488,12490-12494 -
Property
svn:global-ignores
set to
*.nuget
packages
- Property svn:mergeinfo changed
-
branches/GBT/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding
- Property svn:mergeinfo changed
-
branches/GBT/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.4/Grammars/SymbolicExpressionTreeGrammar.cs
r12012 r12495 55 55 } 56 56 } 57 public override IEnumerable<ISymbol> AllowedSymbols {58 get { return base.AllowedSymbols; }59 }60 57 public IEnumerable<ISymbol> ModifyableSymbols { 61 58 get { return base.symbols.Values; } … … 76 73 } 77 74 78 public override bool IsAllowedChildSymbol(ISymbol parent, ISymbol child) { 79 return grammar.IsAllowedChildSymbol(parent, child) || base.IsAllowedChildSymbol(parent, child); 80 } 81 public override bool IsAllowedChildSymbol(ISymbol parent, ISymbol child, int argumentIndex) { 82 return grammar.IsAllowedChildSymbol(parent, child, argumentIndex) || base.IsAllowedChildSymbol(parent, child, argumentIndex); 75 public override void RemoveSymbol(ISymbol symbol) { 76 if (!IsModifyableSymbol(symbol)) throw new InvalidOperationException(); 77 base.RemoveSymbol(symbol); 83 78 } 84 79 … … 91 86 return base.GetMaximumSubtreeCount(symbol); 92 87 } 93 94 void ISymbolicExpressionTreeGrammar.AddSymbol(ISymbol symbol) { 95 base.AddSymbol(symbol); 96 } 97 void ISymbolicExpressionTreeGrammar.RemoveSymbol(ISymbol symbol) { 98 if (!IsModifyableSymbol(symbol)) throw new InvalidOperationException(); 99 base.RemoveSymbol(symbol); 100 } 101 void ISymbolicExpressionTreeGrammar.AddAllowedChildSymbol(ISymbol parent, ISymbol child) { 102 base.AddAllowedChildSymbol(parent, child); 103 } 104 void ISymbolicExpressionTreeGrammar.AddAllowedChildSymbol(ISymbol parent, ISymbol child, int argumentIndex) { 105 base.AddAllowedChildSymbol(parent, child, argumentIndex); 106 } 107 void ISymbolicExpressionTreeGrammar.RemoveAllowedChildSymbol(ISymbol parent, ISymbol child) { 108 base.RemoveAllowedChildSymbol(parent, child); 109 } 110 void ISymbolicExpressionTreeGrammar.RemoveAllowedChildSymbol(ISymbol parent, ISymbol child, int argumentIndex) { 111 base.RemoveAllowedChildSymbol(parent, child, argumentIndex); 112 } 113 114 void ISymbolicExpressionTreeGrammar.SetSubtreeCount(ISymbol symbol, int minimumSubtreeCount, int maximumSubtreeCount) { 88 public override void SetSubtreeCount(ISymbol symbol, int minimumSubtreeCount, int maximumSubtreeCount) { 115 89 if (!IsModifyableSymbol(symbol)) throw new InvalidOperationException(); 116 90 base.SetSubtreeCount(symbol, minimumSubtreeCount, maximumSubtreeCount); 117 91 } 118 92 119 int ISymbolicExpressionGrammarBase.GetMinimumExpressionDepth(ISymbol symbol) { 120 if (symbols.Count == 0) return grammar.GetMinimumExpressionDepth(symbol); 121 else return base.GetMinimumExpressionDepth(symbol); 93 public override bool IsAllowedChildSymbol(ISymbol parent, ISymbol child) { 94 return grammar.IsAllowedChildSymbol(parent, child) || base.IsAllowedChildSymbol(parent, child); 122 95 } 123 int ISymbolicExpressionGrammarBase.GetMaximumExpressionDepth(ISymbol symbol) { 124 if (symbols.Count == 0) return grammar.GetMaximumExpressionDepth(symbol); 125 else return base.GetMaximumExpressionDepth(symbol); 96 public override bool IsAllowedChildSymbol(ISymbol parent, ISymbol child, int argumentIndex) { 97 return grammar.IsAllowedChildSymbol(parent, child, argumentIndex) || base.IsAllowedChildSymbol(parent, child, argumentIndex); 126 98 } 127 int ISymbolicExpressionGrammarBase.GetMinimumExpressionLength(ISymbol symbol) {128 if (symbols.Count == 0) return grammar.GetMinimumExpressionLength(symbol);129 else return base.GetMinimumExpressionLength(symbol);130 }131 int ISymbolicExpressionGrammarBase.GetMaximumExpressionLength(ISymbol symbol, int maxDepth) {132 if (symbols.Count == 0) return grammar.GetMaximumExpressionLength(symbol, maxDepth);133 else return base.GetMaximumExpressionLength(symbol, maxDepth);134 }135 136 99 } 137 100 }
Note: See TracChangeset
for help on using the changeset viewer.