AsmGrader 0.0.0
Loading...
Searching...
No Matches
grading_session.hpp File Reference

Defines data classes to store result data for the current run session. More...

#include <asmgrader/api/requirement.hpp>
#include <asmgrader/common/expected.hpp>
#include <asmgrader/common/extra_formatters.hpp>
#include <asmgrader/common/formatters/macros.hpp>
#include <asmgrader/exceptions.hpp>
#include <asmgrader/version.hpp>
#include <boost/config/workaround.hpp>
#include <boost/preprocessor/stringize.hpp>
#include <fmt/base.h>
#include <gsl/util>
#include <range/v3/algorithm/all_of.hpp>
#include <range/v3/algorithm/count_if.hpp>
#include <range/v3/algorithm/fold_left.hpp>
#include <range/v3/view/transform.hpp>
#include <chrono>
#include <filesystem>
#include <functional>
#include <optional>
#include <source_location>
#include <string>
#include <string_view>
#include <vector>
Include dependency graph for grading_session.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  asmgrader::CompilerInfo
 
struct  asmgrader::RunMetadata
 
struct  asmgrader::RequirementResult
 
struct  asmgrader::RequirementResult::DebugInfo
 
struct  asmgrader::TestResult
 
struct  asmgrader::AssignmentResult
 
struct  asmgrader::StudentInfo
 
struct  asmgrader::StudentResult
 
struct  asmgrader::MultiStudentResult
 

Namespaces

namespace  asmgrader
 

Functions

 FMT_SERIALIZE_CLASS (::asmgrader::CompilerInfo, kind, major_version, minor_version)
 
 FMT_SERIALIZE_ENUM (::asmgrader::CompilerInfo::Vendor, Unknown, GCC, Clang)
 
 FMT_SERIALIZE_CLASS (::asmgrader::RunMetadata, version, version_string, git_hash, start_time, cpp_standard, compiler_info)
 
 FMT_SERIALIZE_CLASS (::asmgrader::RequirementResult, passed, description, expression_repr, debug_info)
 
 FMT_SERIALIZE_CLASS (::asmgrader::RequirementResult::DebugInfo, msg, loc)
 
 FMT_SERIALIZE_CLASS (::asmgrader::TestResult, name, requirement_results, num_passed, num_total, weight, error)
 
 FMT_SERIALIZE_CLASS (::asmgrader::AssignmentResult, name, test_results, num_requirements_total)
 
 FMT_SERIALIZE_CLASS (::asmgrader::StudentInfo, first_name, last_name, names_known, assignment_path, subst_regex_string)
 
 FMT_SERIALIZE_CLASS (::asmgrader::StudentResult, info, result)
 
 FMT_SERIALIZE_CLASS (::asmgrader::MultiStudentResult, results)
 

Detailed Description

Defines data classes to store result data for the current run session.

Function Documentation

◆ FMT_SERIALIZE_CLASS() [1/9]

FMT_SERIALIZE_CLASS ( ::asmgrader::AssignmentResult ,
name ,
test_results ,
num_requirements_total  )

◆ FMT_SERIALIZE_CLASS() [2/9]

FMT_SERIALIZE_CLASS ( ::asmgrader::CompilerInfo ,
kind ,
major_version ,
minor_version  )

◆ FMT_SERIALIZE_CLASS() [3/9]

FMT_SERIALIZE_CLASS ( ::asmgrader::MultiStudentResult ,
results  )

◆ FMT_SERIALIZE_CLASS() [4/9]

FMT_SERIALIZE_CLASS ( ::asmgrader::RequirementResult ,
passed ,
description ,
expression_repr ,
debug_info  )

◆ FMT_SERIALIZE_CLASS() [5/9]

FMT_SERIALIZE_CLASS ( ::asmgrader::RequirementResult::DebugInfo ,
msg ,
loc  )

◆ FMT_SERIALIZE_CLASS() [6/9]

FMT_SERIALIZE_CLASS ( ::asmgrader::RunMetadata ,
version ,
version_string ,
git_hash ,
start_time ,
cpp_standard ,
compiler_info  )

◆ FMT_SERIALIZE_CLASS() [7/9]

FMT_SERIALIZE_CLASS ( ::asmgrader::StudentInfo ,
first_name ,
last_name ,
names_known ,
assignment_path ,
subst_regex_string  )

◆ FMT_SERIALIZE_CLASS() [8/9]

FMT_SERIALIZE_CLASS ( ::asmgrader::StudentResult ,
info ,
result  )

◆ FMT_SERIALIZE_CLASS() [9/9]

FMT_SERIALIZE_CLASS ( ::asmgrader::TestResult ,
name ,
requirement_results ,
num_passed ,
num_total ,
weight ,
error  )

◆ FMT_SERIALIZE_ENUM()

FMT_SERIALIZE_ENUM ( ::asmgrader::CompilerInfo::Vendor ,
Unknown ,
GCC ,
Clang  )