[JAVA-4799] Document: Javadocs for the expression API Created: 02/Nov/22  Updated: 28/Oct/23  Resolved: 31/Jan/23

Status: Closed
Project: Java Driver
Component/s: None
Affects Version/s: None
Fix Version/s: 4.9.0

Type: Improvement Priority: Unknown
Reporter: Maxim Katcharov Assignee: Maxim Katcharov
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Epic Link: Expression builders
Quarter: FY23Q4

 Description   

Any javadocs on the Expression interfaces (and the Expressions utility class) that are merged in to the expressions branch are considered tentative until this ticket is resolved, and methods might lack docs entirely. This does not apply to work outside of the Expression interfaces/Expressions class.

It is not obvious how the docs should be written. For example, "returns logical true if this  Expression is evaluated to false" seems awkward and confusing, possibly because it mixes concepts from a variety of levels: abstract values, the specific interface, the idea of evaluation, the semantics versus the implementation, and so on. We would need to have a careful look at how JDK or other similar library javadoc might have solved some of these problems.

 



 Comments   
Comment by Githook User [ 31/Jan/23 ]

Author:

{'name': 'Maxim Katcharov', 'email': 'maxim.katcharov@mongodb.com', 'username': 'katcharov'}

Message: Add MQL Expressions (#1032)

  • Implement boolean expressions (#1025)

JAVA-4779

  • Implement filter, map, reduce (#1031)

JAVA-4781

  • Implement eq, ne, gt, gte, lt, lte (#1033)

JAVA-4784

  • Implement string expressions (#1036)

JAVA-4801

  • Implement arithmetic expressions (#1037)

Implement arithmetic expressions (from top 50, and others)

JAVA-4803

  • Implement array expressions (#1043)

JAVA-4805

  • Implement date expressions (#1045)

JAVA-4804

  • Implement conversion/type expressions (#1050)

JAVA-4802

  • Implement document expressions (#1052)

JAVA-4782

  • Replace reduce with individual reductions (#1053)

JAVA-4814

  • Implement map expressions (#1054)

JAVA-4817

  • Implement switch expression (#1055)

JAVA-4813

  • Test expressions in context (#1057)

JAVA-4820

  • Add javadoc for boolean, date, number, integer, and expression (#1059)

JAVA-4799

  • Update and add documentation (#1059)
  • Fix, tests

JAVA-4799

  • Add `@MqlUnchecked` and a few usage examples (#1059)

JAVA-4799

  • Add has to document, add tests (#1070)

JAVA-4799

  • Add javadocs for remaining classes (#1070)

JAVA-4799

  • 5.2 annotations (#1070)

JAVA-4799

  • 5.0 annotations (#1070)

JAVA-4799

  • 4.4 annotations (#1070)

JAVA-4799

  • 4.2 annotations (#1070)

JAVA-4799

  • 4.0 annotations (#1070)

JAVA-4799

  • Update and add documentation, add tests, fix minor issues (#1070)

Rename extractBsonValue

Fix access modifiers

Remove excess comments

Update docs

Fix: behaviour of get

Add notNull to API, add notNullApi test

Fix docs/annotations, tests

Fix docs, annotations, since

Fix docs

Revert external

Add missing MqlUnchecked

Fix missing null checks

Checkstyle

JAVA-4799

  • Rename to Mql (automated) (#1073)

JAVA-3879

  • Rename methods (automated) (#1073)

JAVA-3879

  • Update naming, terms, and missing checks and annotations (#1073)

JAVA-3879

---------

Co-authored-by: Valentin Kovalenko <valentin.kovalenko@mongodb.com>
Branch: master
https://github.com/mongodb/mongo-java-driver/commit/ff8334189bb44fc33e5e3ce89cb4b07090272b3a

Generated at Thu Feb 08 09:02:59 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.