original_string: private static function question_structure() {
          return new external_single_structure(
              array(
                  'slot' => new external_value(PARAM_INT, 'slot number'),
                  'type' => new external_value(PARAM_ALPHANUMEXT, 'question type, i.e: multichoice'),
                  'page' => new external_value(PARAM_INT, 'page of the quiz this question appears on'),
                  'html' => new external_value(PARAM_RAW, 'the question rendered'),
                  'sequencecheck' => new external_value(PARAM_INT, 'the number of real steps in this attempt', VALUE_OPTIONAL),
                  'lastactiontime' => new external_value(PARAM_INT, 'the timestamp of the most recent step in this question attempt',
                                                          VALUE_OPTIONAL),
                  'hasautosavedstep' => new external_value(PARAM_BOOL, 'whether this question attempt has autosaved data',
                                                              VALUE_OPTIONAL),
                  'flagged' => new external_value(PARAM_BOOL, 'whether the question is flagged or not'),
                  'number' => new external_value(PARAM_INT, 'question ordering number in the quiz', VALUE_OPTIONAL),
                  'state' => new external_value(PARAM_ALPHA, 'the state where the question is in.
                      It will not be returned if the user cannot see it due to the quiz display correctness settings.',
                      VALUE_OPTIONAL),
                  'status' => new external_value(PARAM_RAW, 'current formatted state of the question', VALUE_OPTIONAL),
                  'blockedbyprevious' => new external_value(PARAM_BOOL, 'whether the question is blocked by the previous question',
                      VALUE_OPTIONAL),
                  'mark' => new external_value(PARAM_RAW, 'the mark awarded.
                      It will be returned only if the user is allowed to see it.', VALUE_OPTIONAL),
                  'maxmark' => new external_value(PARAM_FLOAT, 'the maximum mark possible for this question attempt.
                      It will be returned only if the user is allowed to see it.', VALUE_OPTIONAL),
              ),
              'The question data. Some fields may not be returned depending on the quiz display settings.'
          );
      }
code: private static function question_structure() {
          return new external_single_structure(
              array(
                  'slot' => new external_value(PARAM_INT, 'slot number'),
                  'type' => new external_value(PARAM_ALPHANUMEXT, 'question type, i.e: multichoice'),
                  'page' => new external_value(PARAM_INT, 'page of the quiz this question appears on'),
                  'html' => new external_value(PARAM_RAW, 'the question rendered'),
                  'sequencecheck' => new external_value(PARAM_INT, 'the number of real steps in this attempt', VALUE_OPTIONAL),
                  'lastactiontime' => new external_value(PARAM_INT, 'the timestamp of the most recent step in this question attempt',
                                                          VALUE_OPTIONAL),
                  'hasautosavedstep' => new external_value(PARAM_BOOL, 'whether this question attempt has autosaved data',
                                                              VALUE_OPTIONAL),
                  'flagged' => new external_value(PARAM_BOOL, 'whether the question is flagged or not'),
                  'number' => new external_value(PARAM_INT, 'question ordering number in the quiz', VALUE_OPTIONAL),
                  'state' => new external_value(PARAM_ALPHA, 'the state where the question is in.
                      It will not be returned if the user cannot see it due to the quiz display correctness settings.',
                      VALUE_OPTIONAL),
                  'status' => new external_value(PARAM_RAW, 'current formatted state of the question', VALUE_OPTIONAL),
                  'blockedbyprevious' => new external_value(PARAM_BOOL, 'whether the question is blocked by the previous question',
                      VALUE_OPTIONAL),
                  'mark' => new external_value(PARAM_RAW, 'the mark awarded.
                      It will be returned only if the user is allowed to see it.', VALUE_OPTIONAL),
                  'maxmark' => new external_value(PARAM_FLOAT, 'the maximum mark possible for this question attempt.
                      It will be returned only if the user is allowed to see it.', VALUE_OPTIONAL),
              ),
              'The question data. Some fields may not be returned depending on the quiz display settings.'
          );
      }
code_tokens: private static function question_structure ( ) { return new external_single_structure ( array ( 'slot' => new external_value ( PARAM_INT , 'slot number' ) , 'type' => new external_value ( PARAM_ALPHANUMEXT , 'question type, i.e: multichoice' ) , 'page' => new external_value ( PARAM_INT , 'page of the quiz this question appears on' ) , 'html' => new external_value ( PARAM_RAW , 'the question rendered' ) , 'sequencecheck' => new external_value ( PARAM_INT , 'the number of real steps in this attempt' , VALUE_OPTIONAL ) , 'lastactiontime' => new external_value ( PARAM_INT , 'the timestamp of the most recent step in this question attempt' , VALUE_OPTIONAL ) , 'hasautosavedstep' => new external_value ( PARAM_BOOL , 'whether this question attempt has autosaved data' , VALUE_OPTIONAL ) , 'flagged' => new external_value ( PARAM_BOOL , 'whether the question is flagged or not' ) , 'number' => new external_value ( PARAM_INT , 'question ordering number in the quiz' , VALUE_OPTIONAL ) , 'state' => new external_value ( PARAM_ALPHA , 'the state where the question is in.
                      It will not be returned if the user cannot see it due to the quiz display correctness settings.' , VALUE_OPTIONAL ) , 'status' => new external_value ( PARAM_RAW , 'current formatted state of the question' , VALUE_OPTIONAL ) , 'blockedbyprevious' => new external_value ( PARAM_BOOL , 'whether the question is blocked by the previous question' , VALUE_OPTIONAL ) , 'mark' => new external_value ( PARAM_RAW , 'the mark awarded.
                      It will be returned only if the user is allowed to see it.' , VALUE_OPTIONAL ) , 'maxmark' => new external_value ( PARAM_FLOAT , 'the maximum mark possible for this question attempt.
                      It will be returned only if the user is allowed to see it.' , VALUE_OPTIONAL ) , ) , 'The question data. Some fields may not be returned depending on the quiz display settings.' ) ; }
docstring: Describes a single question structure.
  
  @return external_single_structure the question data. Some fields may not be returned depending on the quiz display settings.
  @since  Moodle 3.1
  @since Moodle 3.2 blockedbyprevious parameter added.
docstring_tokens: Describes a single question structure .