]> mj.ucw.cz Git - eval.git/blob - doc/meta
Config parser: added one forgotten WS
[eval.git] / doc / meta
1 Moe meta-files
2 ##############
3
4 Grammar:
5 ~~~~~~~~
6
7 <file> = <attribute>*
8
9 <attribute> = (<single> | <nested> | <comment>)
10
11 <single> = <indent> <name> ":" <value> "\n"
12
13 <nested> = <open> <attribute>* <close>
14 <open> = <indent> <name> "(" "\n"
15 <close> = <indent> ")" "\n"
16
17 <indent> = (<sp>|<tab>)*
18 <name> = (A-Z | a-z | 0-9 | "-" | "_")+
19 <value> = (<any-printable-UTF8-char> | 0x09)*
20
21 <comment> = ("\n" | <indent> "#" <value> "\n")
22
23 -- there can be multiple attributes with the same name
24 -- spaces can be present only where explicitly allowed by the grammer
25
26 Input to the queue manager
27 ~~~~~~~~~~~~~~~~~~~~~~~~~~
28 task:           name of the task
29 subtask:        name of the sub-task (for open-data problems)
30 source:         file name of the submitted source
31 codex(...)      attributes specific to CodEx
32
33 Added by the queue manager
34 ~~~~~~~~~~~~~~~~~~~~~~~~~~
35 queue-enter:    when did the submit enter the queue (unix timestamp; set by
36                 qman according to the original timestamp of the meta-file)
37 queue-eval:     timestamp of the start of evaluation
38 queue-done:     timestamp of the finish of evaluation
39
40 Added by the evaluator
41 ~~~~~~~~~~~~~~~~~~~~~~
42 lang:           language of the submitted source (file-name extension; missing for open-data problems)
43 error:          human-readable error message for the whole submit (e.g., unrecognized language)
44 test(           results of a single test
45   -- mandatory:
46   id:           the name of the test
47   points:       number of points assigned
48   status:       status code:
49                         OK = passed successfully
50                         CE = compile error
51                         FO = forbidden operation (forbidden syscall atd.)
52                         RE = runtime error (exitcode set)
53                         SG = killed by signal (exitsig set)
54                         TO = timeout
55                         WA = wrong answer
56                         PA = partial answer
57                         NO = no output file generated
58                         SY = syntax error
59                         PE = protocol error (in case of interactive tasks)
60                         XX = internal error (e.g., error when calling judge)
61   message:      human-readable status message (not intended for machine parsing)
62   -- optional:
63   time:         run time in seconds (float)
64   time-wall:    run time on wall clock (float seconds)
65   mem:          used memory in bytes
66   exitcode:     program exit code
67   exitsig:      signal causing process death
68   killed:       set to 1 if the process has been killed (and therefore the
69                 time and memory usage are incomplete)
70 )