Logo
ApraPipes 1.0
Loading...
Searching...
No Matches
JsonParser.h
1// ============================================================
2// File: declarative/JsonParser.h
3// JSON Parser for Pipeline Descriptions
4// Task J1: JSON Parser Implementation
5// ============================================================
6
7#pragma once
8
9#include "ParseResult.h"
10#include <string>
11#include <vector>
12
13namespace apra {
14
15// ============================================================
16// JsonParser - JSON parser for pipeline descriptions
17// ============================================================
19public:
20 // Parse from file path
21 static ParseResult parseFile(const std::string& filepath);
22
23 // Parse from string content
24 static ParseResult parseString(const std::string& content,
25 const std::string& source_name = "<inline>");
26
27 // Get the format name
28 static std::string formatName() { return "json"; }
29
30 // Get supported file extensions
31 static std::vector<std::string> fileExtensions() {
32 return {".json"};
33 }
34};
35
36} // namespace apra
Definition JsonParser.h:18
static ParseResult parseString(const std::string &content, const std::string &source_name="<inline>")
Definition JsonParser.cpp:285
static std::vector< std::string > fileExtensions()
Definition JsonParser.h:31
static std::string formatName()
Definition JsonParser.h:28
static ParseResult parseFile(const std::string &filepath)
Definition JsonParser.cpp:248
Definition FrameTypeRegistrations.h:10
Definition ParseResult.h:17