Index: Weight.java =================================================================== --- Weight.java (revision 154651) +++ Weight.java (working copy) @@ -21,7 +21,13 @@ import org.apache.lucene.index.IndexReader; /** Expert: Calculate query weights and build query scorers. - *
A Weight is used in the following way: + *

+ * The purpose of Weight is to make it so that searching does not modify + * a Query, so that a Query instance can be reused.
+ * Searcher dependent state of the query should reside in the Weight.
+ * IndexReader dependent state should reside in the Scorer. + *

+ * A Weight is used in the following way: *

    *
  1. A Weight is constructed by a top-level query, * given a Searcher ({@link Query#createWeight(Searcher)}).