You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucenenet.apache.org by ni...@apache.org on 2017/01/26 11:12:15 UTC

[02/11] lucenenet git commit: Lucene.Net.Expressions: member accessibility

Lucene.Net.Expressions: member accessibility


Project: http://git-wip-us.apache.org/repos/asf/lucenenet/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucenenet/commit/0d5490e8
Tree: http://git-wip-us.apache.org/repos/asf/lucenenet/tree/0d5490e8
Diff: http://git-wip-us.apache.org/repos/asf/lucenenet/diff/0d5490e8

Branch: refs/heads/api-work
Commit: 0d5490e819484e2ea34ed9729abf7227d648c083
Parents: 332b24c
Author: Shad Storhaug <sh...@shadstorhaug.com>
Authored: Thu Jan 26 14:32:17 2017 +0700
Committer: Shad Storhaug <sh...@shadstorhaug.com>
Committed: Thu Jan 26 14:32:17 2017 +0700

----------------------------------------------------------------------
 src/Lucene.Net.Expressions/Bindings.cs          |  4 +--
 src/Lucene.Net.Expressions/Expression.cs        | 32 ++++++++++----------
 .../ExpressionComparator.cs                     |  8 -----
 .../ExpressionFunctionValues.cs                 |  6 ++--
 .../ExpressionRescorer.cs                       | 10 ++----
 .../ExpressionSortField.cs                      |  5 ++-
 .../ExpressionValueSource.cs                    |  9 ++----
 .../JS/JavascriptCompiler.cs                    | 22 ++------------
 .../JS/JavascriptLexer.cs                       | 11 ++++---
 .../JS/JavascriptParser.cs                      | 18 +++++------
 .../Lucene.Net.Expressions.csproj               |  2 +-
 .../ScoreFunctionValues.cs                      |  1 +
 src/Lucene.Net.Expressions/ScoreValueSource.cs  |  9 ++----
 src/Lucene.Net.Expressions/SimpleBindings.cs    | 12 +++++---
 14 files changed, 56 insertions(+), 93 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/lucenenet/blob/0d5490e8/src/Lucene.Net.Expressions/Bindings.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Expressions/Bindings.cs b/src/Lucene.Net.Expressions/Bindings.cs
index c299f15..59f12de 100644
--- a/src/Lucene.Net.Expressions/Bindings.cs
+++ b/src/Lucene.Net.Expressions/Bindings.cs
@@ -17,7 +17,7 @@ namespace Lucene.Net.Expressions
 		/// Sole constructor. (For invocation by subclass
 		/// constructors, typically implicit.)
 		/// </remarks>
-		public Bindings()
+		protected Bindings()
 		{
 		}
 
@@ -30,7 +30,7 @@ namespace Lucene.Net.Expressions
 		/// <code>ValueSource</code>
 		/// over relevance scores
 		/// </summary>
-		protected internal ValueSource GetScoreValueSource()
+		protected ValueSource GetScoreValueSource()
 		{
 			return new ScoreValueSource();
 		}

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/0d5490e8/src/Lucene.Net.Expressions/Expression.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Expressions/Expression.cs b/src/Lucene.Net.Expressions/Expression.cs
index cd33d92..3c40f4c 100644
--- a/src/Lucene.Net.Expressions/Expression.cs
+++ b/src/Lucene.Net.Expressions/Expression.cs
@@ -26,24 +26,24 @@ namespace Lucene.Net.Expressions
 	public abstract class Expression
 	{
 		/// <summary>The original source text</summary>
-		public readonly string sourceText;
+		public readonly string sourceText; // LUCENENET TODO: Make property
 
-		/// <summary>Named variables referred to by this expression</summary>
-		public readonly string[] variables;
+        /// <summary>Named variables referred to by this expression</summary>
+        public readonly string[] variables; // LUCENENET TODO: Make property
 
-		/// <summary>
-		/// Creates a new
-		/// <code>Expression</code>
-		/// .
-		/// </summary>
-		/// <param name="sourceText">
-		/// Source text for the expression: e.g.
-		/// <code>ln(popularity)</code>
-		/// </param>
-		/// <param name="variables">
-		/// Names of external variables referred to by the expression
-		/// </param>
-		public Expression(string sourceText, string[] variables)
+        /// <summary>
+        /// Creates a new
+        /// <code>Expression</code>
+        /// .
+        /// </summary>
+        /// <param name="sourceText">
+        /// Source text for the expression: e.g.
+        /// <code>ln(popularity)</code>
+        /// </param>
+        /// <param name="variables">
+        /// Names of external variables referred to by the expression
+        /// </param>
+        protected Expression(string sourceText, string[] variables)
 		{
 			// javadocs
 			this.sourceText = sourceText;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/0d5490e8/src/Lucene.Net.Expressions/ExpressionComparator.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Expressions/ExpressionComparator.cs b/src/Lucene.Net.Expressions/ExpressionComparator.cs
index cae906b..2b22f76 100644
--- a/src/Lucene.Net.Expressions/ExpressionComparator.cs
+++ b/src/Lucene.Net.Expressions/ExpressionComparator.cs
@@ -13,15 +13,11 @@ namespace Lucene.Net.Expressions
     internal class ExpressionComparer : FieldComparer<double>
     {
         private readonly double[] values;
-
         private double bottom;
-
         private double topValue;
 
         private ValueSource source;
-
         private FunctionValues scores;
-
         private AtomicReaderContext readerContext;
 
         public ExpressionComparer(ValueSource source, int numHits)
@@ -58,19 +54,16 @@ namespace Lucene.Net.Expressions
             topValue = (double)value;
         }
 
-
         public override int CompareBottom(int doc)
         {
             return bottom.CompareTo(scores.DoubleVal(doc));
         }
 
-
         public override void Copy(int slot, int doc)
         {
             values[slot] = scores.DoubleVal(doc);
         }
 
-
         public override FieldComparer SetNextReader(AtomicReaderContext context)
         {
             this.readerContext = context;
@@ -83,7 +76,6 @@ namespace Lucene.Net.Expressions
             get { return values[slot]; }
         }
 
-
         public override int CompareTop(int doc)
         {
             return topValue.CompareTo(scores.DoubleVal(doc));

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/0d5490e8/src/Lucene.Net.Expressions/ExpressionFunctionValues.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Expressions/ExpressionFunctionValues.cs b/src/Lucene.Net.Expressions/ExpressionFunctionValues.cs
index 63b8f67..93adf84 100644
--- a/src/Lucene.Net.Expressions/ExpressionFunctionValues.cs
+++ b/src/Lucene.Net.Expressions/ExpressionFunctionValues.cs
@@ -13,15 +13,13 @@ namespace Lucene.Net.Expressions
 	internal class ExpressionFunctionValues : DoubleDocValues
 	{
 		internal readonly Expression expression;
-
 		internal readonly FunctionValues[] functionValues;
 
 		internal int currentDocument = -1;
-
 		internal double currentValue;
 
-		internal ExpressionFunctionValues(ValueSource parent, Expression expression, FunctionValues
-			[] functionValues) : base(parent)
+		internal ExpressionFunctionValues(ValueSource parent, Expression expression, FunctionValues[] functionValues) 
+            : base(parent)
 		{
 			if (expression == null)
 			{

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/0d5490e8/src/Lucene.Net.Expressions/ExpressionRescorer.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Expressions/ExpressionRescorer.cs b/src/Lucene.Net.Expressions/ExpressionRescorer.cs
index 9087d0a..aa8b249 100644
--- a/src/Lucene.Net.Expressions/ExpressionRescorer.cs
+++ b/src/Lucene.Net.Expressions/ExpressionRescorer.cs
@@ -25,7 +25,6 @@ namespace Lucene.Net.Expressions
     internal class ExpressionRescorer : SortRescorer
     {
         private readonly Expression expression;
-
         private readonly Bindings bindings;
 
         /// <summary>
@@ -36,8 +35,7 @@ namespace Lucene.Net.Expressions
         /// pass scores.
         /// </summary>
         public ExpressionRescorer(Expression expression, Bindings bindings)
-            : base(new Sort
-                (expression.GetSortField(bindings, true)))
+            : base(new Sort(expression.GetSortField(bindings, true)))
         {
             this.expression = expression;
             this.bindings = bindings;
@@ -46,9 +44,7 @@ namespace Lucene.Net.Expressions
         private class FakeScorer : Scorer
         {
             internal float score;
-
             internal int doc = -1;
-
             internal int freq = 1;
 
             public FakeScorer()
@@ -58,7 +54,7 @@ namespace Lucene.Net.Expressions
 
             public override int Advance(int target)
             {
-                throw new NotSupportedException("FakeScorer doesn't support advance(int)");
+                throw new NotSupportedException("FakeScorer doesn't support Advance(int)");
             }
 
             public override int DocID
@@ -73,7 +69,7 @@ namespace Lucene.Net.Expressions
 
             public override int NextDoc()
             {
-                throw new NotSupportedException("FakeScorer doesn't support nextDoc()");
+                throw new NotSupportedException("FakeScorer doesn't support NextDoc()");
             }
 
             public override float GetScore()

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/0d5490e8/src/Lucene.Net.Expressions/ExpressionSortField.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Expressions/ExpressionSortField.cs b/src/Lucene.Net.Expressions/ExpressionSortField.cs
index 4f21176..0f1da11 100644
--- a/src/Lucene.Net.Expressions/ExpressionSortField.cs
+++ b/src/Lucene.Net.Expressions/ExpressionSortField.cs
@@ -13,13 +13,12 @@ namespace Lucene.Net.Expressions
 	{
 		private readonly ExpressionValueSource source;
 
-		internal ExpressionSortField(string name, ExpressionValueSource source, bool reverse
-			) : base(name, SortFieldType.CUSTOM, reverse)
+		internal ExpressionSortField(string name, ExpressionValueSource source, bool reverse) 
+            : base(name, SortFieldType.CUSTOM, reverse)
 		{
 			this.source = source;
 		}
 
-		
 		public override FieldComparer GetComparer(int numHits, int sortPos)
 		{
 			return new ExpressionComparer(source, numHits);

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/0d5490e8/src/Lucene.Net.Expressions/ExpressionValueSource.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Expressions/ExpressionValueSource.cs b/src/Lucene.Net.Expressions/ExpressionValueSource.cs
index 241efab..87d7d7c 100644
--- a/src/Lucene.Net.Expressions/ExpressionValueSource.cs
+++ b/src/Lucene.Net.Expressions/ExpressionValueSource.cs
@@ -21,9 +21,7 @@ namespace Lucene.Net.Expressions
 	internal sealed class ExpressionValueSource : ValueSource
 	{
 		internal readonly ValueSource[] variables;
-
 		internal readonly Expression expression;
-
 		internal readonly bool needsScores;
 
 		internal ExpressionValueSource(Bindings bindings, Expression expression)
@@ -70,9 +68,7 @@ namespace Lucene.Net.Expressions
 			this.needsScores = needsScores;
 		}
 
-		
-		public override FunctionValues GetValues(IDictionary context, AtomicReaderContext
-			 readerContext)
+		public override FunctionValues GetValues(IDictionary context, AtomicReaderContext readerContext)
 		{
 			IDictionary<string, FunctionValues> valuesCache = (IDictionary<string, FunctionValues>)context["valuesCache"];
 			if (valuesCache == null)
@@ -134,8 +130,7 @@ namespace Lucene.Net.Expressions
 			{
 				return false;
 			}
-			Lucene.Net.Expressions.ExpressionValueSource other = (Lucene.Net.Expressions.ExpressionValueSource
-				)obj;
+            ExpressionValueSource other = (ExpressionValueSource)obj;
 			if (expression == null)
 			{
 				if (other.expression != null)

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/0d5490e8/src/Lucene.Net.Expressions/JS/JavascriptCompiler.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Expressions/JS/JavascriptCompiler.cs b/src/Lucene.Net.Expressions/JS/JavascriptCompiler.cs
index f3e42f0..f173ca9 100644
--- a/src/Lucene.Net.Expressions/JS/JavascriptCompiler.cs
+++ b/src/Lucene.Net.Expressions/JS/JavascriptCompiler.cs
@@ -82,7 +82,7 @@ namespace Lucene.Net.Expressions.JS
         private static readonly Type FUNCTION_VALUES_TYPE = typeof(FunctionValues);
 
         private static readonly ConstructorInfo EXPRESSION_CTOR = typeof(Expression).
-            GetConstructor(new Type[] { typeof(String), typeof(String[]) });
+            GetConstructor(new Type[] { typeof(string), typeof(string[]) });
 
         private static readonly MethodInfo EVALUATE_METHOD = GetMethod(EXPRESSION_TYPE, "Evaluate",
             new[] { typeof(int), typeof(FunctionValues[]) });
@@ -162,7 +162,6 @@ namespace Lucene.Net.Expressions.JS
 
         public static Expression Compile(string sourceText, IDictionary<string, MethodInfo> functions)
         {
-
             foreach (MethodInfo m in functions.Values)
             {
                 CheckFunction(m);
@@ -187,15 +186,13 @@ namespace Lucene.Net.Expressions.JS
 
         /// <param name="sourceText">The expression to compile</param>
         private JavascriptCompiler(string sourceText)
-            : this(sourceText, DEFAULT_FUNCTIONS
-                )
+            : this(sourceText, DEFAULT_FUNCTIONS)
         {
         }
 
         /// <summary>Constructs a compiler for expressions with specific set of functions</summary>
         /// <param name="sourceText">The expression to compile</param>
-        private JavascriptCompiler(string sourceText, IDictionary<string, MethodInfo> functions
-            )
+        private JavascriptCompiler(string sourceText, IDictionary<string, MethodInfo> functions)
         {
             if (sourceText == null)
             {
@@ -572,7 +569,6 @@ namespace Lucene.Net.Expressions.JS
             RecursiveCompile(current.GetChild(1), arg2);
             gen.Emit(op);
             gen.Emit(OpCodes.Conv_R8);
-
         }
 
         private void PushBitwise(OpCode op, ITree current)
@@ -587,20 +583,16 @@ namespace Lucene.Net.Expressions.JS
             RecursiveCompile(current.GetChild(1), arg2);
             gen.Emit(op);
             gen.Emit(OpCodes.Conv_R8);
-            
         }
 
         private void PushCond(OpCode opCode, ITree current, Type expected)
         {
-
             RecursiveCompile(current.GetChild(0), expected);
             RecursiveCompile(current.GetChild(1), expected);
             gen.Emit(opCode);
             gen.Emit(OpCodes.Conv_R8);
-            
         }
 
-        
         private void PushLong(long i)
         {
             gen.Emit(OpCodes.Ldc_I8,i);
@@ -608,7 +600,6 @@ namespace Lucene.Net.Expressions.JS
             {
                 gen.Emit(OpCodes.Conv_R8);
             }
-            
         }
 
         private void EndCompile()
@@ -617,8 +608,6 @@ namespace Lucene.Net.Expressions.JS
             dynamicType.DefineMethodOverride(evalMethod, EVALUATE_METHOD);
         }
 
-
-
         private ITree GetAntlrComputedExpressionTree()
         {
             ICharStream input = new ANTLRStringStream(sourceText);
@@ -635,8 +624,6 @@ namespace Lucene.Net.Expressions.JS
             }
         }
 
-
-
         static JavascriptCompiler()
         {
             IDictionary<string, MethodInfo> map = new Dictionary<string, MethodInfo>();
@@ -728,7 +715,6 @@ namespace Lucene.Net.Expressions.JS
 
         private static void CheckFunction(MethodInfo method)
         {
-
             // do some checks if the signature is "compatible":
             if (!(method.IsStatic))
             {
@@ -756,6 +742,4 @@ namespace Lucene.Net.Expressions.JS
             }
         }
     }
-
-    
 }

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/0d5490e8/src/Lucene.Net.Expressions/JS/JavascriptLexer.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Expressions/JS/JavascriptLexer.cs b/src/Lucene.Net.Expressions/JS/JavascriptLexer.cs
index 0646355..cab1627 100644
--- a/src/Lucene.Net.Expressions/JS/JavascriptLexer.cs
+++ b/src/Lucene.Net.Expressions/JS/JavascriptLexer.cs
@@ -2087,7 +2087,7 @@ loop2_break: ;
 			}
 		}
 
-		protected internal JavascriptLexer.DFA9 dfa9;
+		protected JavascriptLexer.DFA9 dfa9;
 
 		internal static readonly string DFA9_eotS = "\x1\uffff\x2\x4\x3\uffff\x1\x4";
 
@@ -2132,7 +2132,7 @@ loop2_break: ;
 			}
 		}
 
-		protected internal class DFA9 : DFA
+		protected class DFA9 : DFA
 		{
 			public DFA9(JavascriptLexer _enclosing, BaseRecognizer recognizer)
 			{
@@ -2161,11 +2161,14 @@ loop2_break: ;
 		}
 	}
 
-    public class ParseException:Exception
+    // LUCENENET: All exeption classes should be marked serializable
+#if FEATURE_SERIALIZABLE
+    [Serializable]
+#endif
+    public class ParseException : Exception
     {
         public ParseException(string message, int charPositionInLine)
         {
-            
         }
     }
 }

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/0d5490e8/src/Lucene.Net.Expressions/JS/JavascriptParser.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Expressions/JS/JavascriptParser.cs b/src/Lucene.Net.Expressions/JS/JavascriptParser.cs
index 5b77351..518168f 100644
--- a/src/Lucene.Net.Expressions/JS/JavascriptParser.cs
+++ b/src/Lucene.Net.Expressions/JS/JavascriptParser.cs
@@ -116,7 +116,7 @@ namespace Lucene.Net.Expressions.JS
         {
         }
 
-        protected internal ITreeAdaptor adaptor = new CommonTreeAdaptor();
+        protected ITreeAdaptor adaptor = new CommonTreeAdaptor();
 
         public virtual ITreeAdaptor TreeAdaptor
         {
@@ -349,7 +349,7 @@ namespace Lucene.Net.Expressions.JS
             }
         }
 
-        internal class ExpressionReturn<TToken> : ParserRuleReturnScope<TToken>
+        public class ExpressionReturn<TToken> : ParserRuleReturnScope<TToken>
         {
 
         }
@@ -460,7 +460,7 @@ namespace Lucene.Net.Expressions.JS
         // $ANTLR start "logical_or"
         // src/java/org/apache/lucene/expressions/js/Javascript.g:258:1: logical_or : logical_and ( AT_BOOL_OR ^ logical_and )* ;
 
-        public AstParserRuleReturnScope<ITree, IToken> Logical_or()
+        public AstParserRuleReturnScope<ITree, IToken> Logical_or() // LUCENENET TODO: Rename Logical_Or()
         {
             var retval = new AstParserRuleReturnScope<ITree, IToken> { Start = input.LT(1) };
             CommonTree root_0;
@@ -530,7 +530,7 @@ namespace Lucene.Net.Expressions.JS
         // $ANTLR start "logical_and"
         // src/java/org/apache/lucene/expressions/js/Javascript.g:262:1: logical_and : bitwise_or ( AT_BOOL_AND ^ bitwise_or )* ;
 
-        public AstParserRuleReturnScope<ITree, IToken> Logical_and()
+        public AstParserRuleReturnScope<ITree, IToken> Logical_and() // LUCENENET TODO: Rename Logical_And()
         {
             var retval = new AstParserRuleReturnScope<ITree, IToken> { Start = input.LT(1) };
             CommonTree root;
@@ -599,7 +599,7 @@ namespace Lucene.Net.Expressions.JS
         // $ANTLR start "bitwise_or"
         // src/java/org/apache/lucene/expressions/js/Javascript.g:266:1: bitwise_or : bitwise_xor ( AT_BIT_OR ^ bitwise_xor )* ;
 
-        public AstParserRuleReturnScope<ITree, IToken> Bitwise_or()
+        public AstParserRuleReturnScope<ITree, IToken> Bitwise_or() // LUCENENET TODO: Rename Bitwise_Or()
         {
             var retval = new AstParserRuleReturnScope<ITree, IToken> { Start = input.LT(1) };
             try
@@ -663,7 +663,7 @@ namespace Lucene.Net.Expressions.JS
         // $ANTLR start "bitwise_xor"
         // src/java/org/apache/lucene/expressions/js/Javascript.g:270:1: bitwise_xor : bitwise_and ( AT_BIT_XOR ^ bitwise_and )* ;
 
-        public AstParserRuleReturnScope<ITree, IToken> Bitwise_xor()
+        public AstParserRuleReturnScope<ITree, IToken> Bitwise_xor() // LUCENENET TODO: Rename Bitwise_XOr()
         {
             var retval = new AstParserRuleReturnScope<ITree, IToken> { Start = input.LT(1) };
             try
@@ -730,7 +730,7 @@ namespace Lucene.Net.Expressions.JS
         // $ANTLR start "bitwise_and"
         // src/java/org/apache/lucene/expressions/js/Javascript.g:274:1: bitwise_and : equality ( AT_BIT_AND ^ equality )* ;
 
-        public AstParserRuleReturnScope<ITree, IToken> Bitwise_and()
+        public AstParserRuleReturnScope<ITree, IToken> Bitwise_and() // LUCENENET TODO: Rename Bitwise_And()
         {
             var retval = new AstParserRuleReturnScope<ITree, IToken> { Start = input.LT(1) };
             try
@@ -1285,7 +1285,7 @@ namespace Lucene.Net.Expressions.JS
         // $ANTLR start "unary_operator"
         // src/java/org/apache/lucene/expressions/js/Javascript.g:304:1: unary_operator : ( AT_SUBTRACT -> AT_NEGATE | AT_BIT_NOT | AT_BOOL_NOT );
 
-        public AstParserRuleReturnScope<ITree, IToken> Unary_operator()
+        public AstParserRuleReturnScope<ITree, IToken> Unary_operator() // LUCENENET TODO: Rename Unary_Operator()
         {
             var retval = new AstParserRuleReturnScope<ITree, IToken> { Start = input.LT(1) };
             CommonTree root = null;
@@ -1863,6 +1863,4 @@ namespace Lucene.Net.Expressions.JS
         // $ANTLR end "numeric"
         // Delegated rules
     }
-
-
 }

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/0d5490e8/src/Lucene.Net.Expressions/Lucene.Net.Expressions.csproj
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Expressions/Lucene.Net.Expressions.csproj b/src/Lucene.Net.Expressions/Lucene.Net.Expressions.csproj
index bc0477b..d0d2161 100644
--- a/src/Lucene.Net.Expressions/Lucene.Net.Expressions.csproj
+++ b/src/Lucene.Net.Expressions/Lucene.Net.Expressions.csproj
@@ -18,7 +18,7 @@
     <DebugType>full</DebugType>
     <Optimize>false</Optimize>
     <OutputPath>bin\Debug\</OutputPath>
-    <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <DefineConstants>TRACE;DEBUG;FEATURE_SERIALIZABLE</DefineConstants>
     <ErrorReport>prompt</ErrorReport>
     <WarningLevel>4</WarningLevel>
   </PropertyGroup>

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/0d5490e8/src/Lucene.Net.Expressions/ScoreFunctionValues.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Expressions/ScoreFunctionValues.cs b/src/Lucene.Net.Expressions/ScoreFunctionValues.cs
index 5ce9189..50dc769 100644
--- a/src/Lucene.Net.Expressions/ScoreFunctionValues.cs
+++ b/src/Lucene.Net.Expressions/ScoreFunctionValues.cs
@@ -25,6 +25,7 @@ namespace Lucene.Net.Expressions
 
         public override double DoubleVal(int document)
         {
+            // LUCENENET TODO: Possible Bug: Put in try-catch and rethrow "RuntimeException"
             Debug.Assert(document == scorer.DocID);
             var score = scorer.GetScore();
             Console.WriteLine("Score = {0}",score);

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/0d5490e8/src/Lucene.Net.Expressions/ScoreValueSource.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Expressions/ScoreValueSource.cs b/src/Lucene.Net.Expressions/ScoreValueSource.cs
index e58aafa..5a14e94 100644
--- a/src/Lucene.Net.Expressions/ScoreValueSource.cs
+++ b/src/Lucene.Net.Expressions/ScoreValueSource.cs
@@ -19,8 +19,6 @@ namespace Lucene.Net.Expressions
 	/// </summary>
 	internal class ScoreValueSource : ValueSource
 	{
-	    private Scorer hashCodeObj;
-
 	    /// <summary>
 		/// <code>context</code> must contain a key "scorer" which is a
 		/// <see cref="Lucene.Net.Search.Scorer">Lucene.Net.Search.Scorer</see>
@@ -31,11 +29,9 @@ namespace Lucene.Net.Expressions
 			 readerContext)
 		{
 			Scorer v = (Scorer)context["scorer"];
-		    hashCodeObj = v;
 			if (v == null)
 			{
-				throw new InvalidOperationException("Expressions referencing the score can only be used for sorting"
-					);
+				throw new InvalidOperationException("Expressions referencing the score can only be used for sorting");
 			}
 			return new ScoreFunctionValues(this, v);
 		}
@@ -47,8 +43,7 @@ namespace Lucene.Net.Expressions
 
 		public override int GetHashCode()
 		{
-            //TODO: revist this and return something meaningful
-		    return 777;
+		    return 777; // LUCENENET TODO: return RuntimeHelpers.GetHashCode(this);
 		}
 
 		public override string GetDescription()

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/0d5490e8/src/Lucene.Net.Expressions/SimpleBindings.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Expressions/SimpleBindings.cs b/src/Lucene.Net.Expressions/SimpleBindings.cs
index fabe242..99e9bac 100644
--- a/src/Lucene.Net.Expressions/SimpleBindings.cs
+++ b/src/Lucene.Net.Expressions/SimpleBindings.cs
@@ -31,8 +31,12 @@ namespace Lucene.Net.Expressions
     /// <lucene.experimental></lucene.experimental>
     public sealed class SimpleBindings : Bindings
     {
-        internal readonly IDictionary<string, object> map = new Dictionary<string, object
-            >();
+        internal readonly IDictionary<string, object> map = new Dictionary<string, object>();
+
+        /// <summary>
+        /// Creates a new empty <see cref="Bindings"/>
+        /// </summary>
+        public SimpleBindings() { }
 
         /// <summary>Adds a SortField to the bindings.</summary>
         /// <remarks>
@@ -59,9 +63,8 @@ namespace Lucene.Net.Expressions
 
         public override ValueSource GetValueSource(string name)
         {
-
             object o;
-            //.NET Port. Directly looking up a missing key will throw a KeyNotFoundException
+            // LUCENENET NOTE: Directly looking up a missing key will throw a KeyNotFoundException
             if (!map.TryGetValue(name, out o))
             {
                 throw new ArgumentException("Invalid reference '" + name + "'");
@@ -104,7 +107,6 @@ namespace Lucene.Net.Expressions
                         throw new NotSupportedException();
                     }
             }
-
         }
 
         /// <summary>Traverses the graph of bindings, checking there are no cycles or missing references