operations.py 912 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. def delete(field):
  2. """
  3. Delete a given field from the document.
  4. """
  5. def transform(doc):
  6. del doc[field]
  7. return transform
  8. def add(field, n):
  9. """
  10. Add n to a given field in the document.
  11. """
  12. def transform(doc):
  13. doc[field] += n
  14. return transform
  15. def subtract(field, n):
  16. """
  17. Subtract n from a given field in the document.
  18. """
  19. def transform(doc):
  20. doc[field] -= n
  21. return transform
  22. def set(field, val):
  23. """
  24. Set a given field to val.
  25. """
  26. def transform(doc):
  27. doc[field] = val
  28. return transform
  29. def increment(field):
  30. """
  31. Increment a given field in the document.
  32. """
  33. def transform(doc):
  34. doc[field] += 1
  35. return transform
  36. def decrement(field):
  37. """
  38. Decrement a given field in the document.
  39. """
  40. def transform(doc):
  41. doc[field] -= 1
  42. return transform