| $autosavedstep | question_attempt | protected | 
  | $behaviour | question_attempt | protected | 
  | $flagged | question_attempt | protected | 
  | $id | question_attempt | protected | 
  | $maxfraction | question_attempt | protected | 
  | $maxmark | question_attempt | protected | 
  | $minfraction | question_attempt | protected | 
  | $observer | question_attempt | protected | 
  | $question | question_attempt | protected | 
  | $questioninitialised | question_attempt | protected | 
  | $questionsummary | question_attempt | protected | 
  | $responsesummary | question_attempt | protected | 
  | $rightanswer | question_attempt | protected | 
  | $slot | question_attempt | protected | 
  | $steps | question_attempt | protected | 
  | $timemodified | question_attempt |  | 
  | $usageid | question_attempt | protected | 
  | $variant | question_attempt | protected | 
  | __construct(question_definition $question, $usageid, ?question_usage_observer $observer=null, $maxmark=null) | question_attempt |  | 
  | add_autosaved_step(question_attempt_step $step) | question_attempt | protected | 
  | add_step(question_attempt_step $step) | question_attempt | protected | 
  | ALL_TRIES | question_attempt |  | 
  | can_finish_during_attempt() | question_attempt |  | 
  | check_file_access($options, $component, $filearea, $args, $forcedownload) | question_attempt |  | 
  | check_qt_var_name_restrictions($expected) | question_attempt | protected | 
  | classify_response($whichtries=self::LAST_TRY) | question_attempt |  | 
  | convert_autosaved_step_to_real_step() | question_attempt | protected | 
  | DISCARD (defined in question_attempt) | question_attempt |  | 
  | discard_autosaved_step() | question_attempt |  | 
  | ensure_question_initialised() | question_attempt | protected | 
  | extra_file_path_components() | question_attempt | protected | 
  | finish($timestamp=null, $userid=null) | question_attempt |  | 
  | FIRST_TRY | question_attempt |  | 
  | format_fraction_as_mark($fraction, $dp) | question_attempt |  | 
  | format_mark($dp) | question_attempt |  | 
  | format_max_mark($dp) | question_attempt |  | 
  | fraction_to_mark($fraction) | question_attempt |  | 
  | get_all_submitted_qt_vars($postdata) | question_attempt |  | 
  | get_applicable_hint() | question_attempt |  | 
  | get_attempt_state_data_to_regrade_with_version(question_attempt_step $oldstep, question_definition $otherversion) | question_attempt | protected | 
  | get_behaviour($requirequestioninitialised=true) | question_attempt |  | 
  | get_behaviour_field_name($varname) | question_attempt |  | 
  | get_behaviour_name() | question_attempt |  | 
  | get_control_field_name($varname) | question_attempt |  | 
  | get_correct_response() | question_attempt |  | 
  | get_current_manual_comment() | question_attempt |  | 
  | get_current_manual_mark() | question_attempt |  | 
  | get_database_id() | question_attempt |  | 
  | get_expected_data($expected, $postdata, $extraprefix) | question_attempt | protected | 
  | get_field_prefix() | question_attempt |  | 
  | get_flag_field_name() | question_attempt |  | 
  | get_fraction() | question_attempt |  | 
  | get_full_qa() | question_attempt |  | 
  | get_full_step_iterator() | question_attempt |  | 
  | get_last_action_time() | question_attempt |  | 
  | get_last_behaviour_var($name, $default=null) | question_attempt |  | 
  | get_last_qt_data($default=array()) | question_attempt |  | 
  | get_last_qt_files($name, $contextid) | question_attempt |  | 
  | get_last_qt_var($name, $default=null) | question_attempt |  | 
  | get_last_step() | question_attempt |  | 
  | get_last_step_with_behaviour_var($name) | question_attempt |  | 
  | get_last_step_with_qt_var($name) | question_attempt |  | 
  | get_manual_comment() | question_attempt |  | 
  | get_mark() | question_attempt |  | 
  | get_max_fraction() | question_attempt |  | 
  | get_max_mark() | question_attempt |  | 
  | get_metadata($name) | question_attempt |  | 
  | get_min_fraction() | question_attempt |  | 
  | get_num_steps() | question_attempt |  | 
  | get_outer_question_div_unique_id() | question_attempt |  | 
  | get_qt_field_name($varname) | question_attempt |  | 
  | get_question($requirequestioninitialised=true) | question_attempt |  | 
  | get_question_id() | question_attempt |  | 
  | get_question_summary() | question_attempt |  | 
  | get_response_file_url(stored_file $file) | question_attempt |  | 
  | get_response_summary() | question_attempt |  | 
  | get_resume_data() | question_attempt | protected | 
  | get_reverse_step_iterator() | question_attempt |  | 
  | get_right_answer_summary() | question_attempt |  | 
  | get_sequence_check_count() | question_attempt |  | 
  | get_slot() | question_attempt |  | 
  | get_state() | question_attempt |  | 
  | get_state_class($showcorrectness) | question_attempt |  | 
  | get_state_string($showcorrectness) | question_attempt |  | 
  | get_step($i) | question_attempt |  | 
  | get_step_iterator() | question_attempt |  | 
  | get_steps_with_submitted_response_iterator() | question_attempt |  | 
  | get_submitted_data($postdata=null) | question_attempt |  | 
  | get_submitted_var($name, $type, $postdata=null) | question_attempt |  | 
  | get_usage_id() | question_attempt |  | 
  | get_variant() | question_attempt |  | 
  | has_autosaved_step() | question_attempt |  | 
  | has_manual_comment() | question_attempt |  | 
  | has_marks() | question_attempt |  | 
  | is_flagged() | question_attempt |  | 
  | KEEP | question_attempt |  | 
  | LAST_TRY | question_attempt |  | 
  | load_from_records($records, $questionattemptid, question_usage_observer $observer, $preferredbehaviour) | question_attempt | static | 
  | manual_grade($comment, $mark, $commentformat=null, $timestamp=null, $userid=null) | question_attempt |  | 
  | PARAM_FILES | question_attempt |  | 
  | PARAM_MARK | question_attempt |  | 
  | PARAM_RAW_FILES | question_attempt |  | 
  | prepare_response_files_draft_itemid($name, $contextid) | question_attempt |  | 
  | process_action($submitteddata, $timestamp=null, $userid=null, $existingstepid=null) | question_attempt |  | 
  | process_autosave($submitteddata, $timestamp=null, $userid=null) | question_attempt |  | 
  | process_response_files($name, $draftidname, $postdata=null, $text=null) | question_attempt | protected | 
  | QUESTION_STATE_APPLIED | question_attempt |  | 
  | QUESTION_STATE_NOT_APPLIED | question_attempt |  | 
  | regrade(question_attempt $oldqa, $finished) | question_attempt |  | 
  | render($options, $number, $page=null) | question_attempt |  | 
  | render_at_step($seq, $options, $number, $preferredbehaviour) | question_attempt |  | 
  | render_head_html($page=null) | question_attempt |  | 
  | rewrite_pluginfile_urls($text, $component, $filearea, $itemid) | question_attempt |  | 
  | rewrite_response_pluginfile_urls($text, $contextid, $name, question_attempt_step $step) | question_attempt |  | 
  | select_variant(question_variant_selection_strategy $variantstrategy) | question_attempt |  | 
  | set_database_id($id) | question_attempt |  | 
  | set_first_step_timecreated() | question_attempt | protected | 
  | set_flagged($flagged) | question_attempt |  | 
  | set_max_mark($maxmark) | question_attempt |  | 
  | set_metadata($name, $value) | question_attempt |  | 
  | set_observer($observer) | question_attempt |  | 
  | set_question_summary($questionsummary) | question_attempt |  | 
  | set_slot($slot) | question_attempt |  | 
  | set_usage_id($usageid) | question_attempt |  | 
  | start($preferredbehaviour, $variant, $submitteddata=array(), $timestamp=null, $userid=null, $existingstepid=null) | question_attempt |  | 
  | start_based_on(question_attempt $oldqa) | question_attempt |  | 
  | summarise_action(question_attempt_step $step) | question_attempt |  | 
  | USE_RAW_DATA | question_attempt |  | 
  | validate_can_regrade_with_other_version(question_definition $otherversion) | question_attempt |  | 
  | validate_manual_mark($currentmark) | question_attempt |  |