Crate tmc_langs_plugins

Source
Expand description

Abstracts over the various language plugins.

Modules§

compression
Contains functions for compressing and uncompressing projects.

Structs§

AntPlugin
CSharpPlugin
ExerciseDesc
A description of an exercise.
ExercisePackagingConfiguration
Represents configuration based on which submission may be packaged.
MakePlugin
MavenPlugin
NoTestsPlugin
NothingIsStudentFilePolicy
Mock policy that ignores the config file and returns false for all files.
Python3Plugin
RPlugin
RunResult
The result of running an exercise’s test suite against a submission.
StyleValidationResult
The result of a style check.

Enums§

Compression
Supported compression methods.
Language
Plugin
Enum containing variants for each language plugin.
PluginError
PluginType
Allows calling LanguagePlugin functions without constructing the plugin.
StyleValidationStrategy
Determines how style errors are handled.

Traits§

StudentFilePolicy
Specifies which files are student files. A single StudentFilePolicy is only valid for a single project as it uses a config file to determine its output.

Functions§

compress_project
Compresses the directory at the given path, only including student files unless naive is set to true.
extract_project
Finds the correct language plug-in for the given exercise path and calls LanguagePlugin::extract_project, If no language plugin matches, see extract_project_overwrite.
get_student_file_policy