field_ref.js 638 B

12345678910111213141516171819202122232425262728
  1. lunr.FieldRef = function (docRef, fieldName, stringValue) {
  2. this.docRef = docRef
  3. this.fieldName = fieldName
  4. this._stringValue = stringValue
  5. }
  6. lunr.FieldRef.joiner = "/"
  7. lunr.FieldRef.fromString = function (s) {
  8. var n = s.indexOf(lunr.FieldRef.joiner)
  9. if (n === -1) {
  10. throw "malformed field ref string"
  11. }
  12. var fieldRef = s.slice(0, n),
  13. docRef = s.slice(n + 1)
  14. return new lunr.FieldRef (docRef, fieldRef, s)
  15. }
  16. lunr.FieldRef.prototype.toString = function () {
  17. if (this._stringValue == undefined) {
  18. this._stringValue = this.fieldName + lunr.FieldRef.joiner + this.docRef
  19. }
  20. return this._stringValue
  21. }