tryParse static method

Parses a RelevanceTruthAndCompletenessRating from a JSON string.

Strips leading/trailing markdown code fences before parsing.

Implementation

static RelevanceTruthAndCompletenessRating? tryParse(String raw) {
  var text = raw.trim();
  // Strip markdown fences (```json ... ``` or ``` ... ```)
  if (text.startsWith('```')) {
    final start = text.indexOf('\n');
    final end = text.lastIndexOf('```');
    if (start != -1 && end > start) {
      text = text.substring(start + 1, end).trim();
    }
  }
  try {
    final j = jsonDecode(text) as Map<String, dynamic>;
    return RelevanceTruthAndCompletenessRating.fromJson(j);
  } catch (_) {
    return null;
  }
}