original_string: private static function grading_instance() {
          global $CFG;
          $instance = array();
          $instance['id']                = new external_value(PARAM_INT, 'instance id');
          $instance['raterid']           = new external_value(PARAM_INT, 'rater id');
          $instance['itemid']            = new external_value(PARAM_INT, 'item id');
          $instance['rawgrade']          = new external_value(PARAM_TEXT, 'raw grade', VALUE_OPTIONAL);
          $instance['status']            = new external_value(PARAM_INT, 'status');
          $instance['feedback']          = new external_value(PARAM_RAW, 'feedback', VALUE_OPTIONAL);
          $instance['feedbackformat']    = new external_format_value('feedback', VALUE_OPTIONAL);
          $instance['timemodified']      = new external_value(PARAM_INT, 'modified time');
          foreach (self::get_grading_methods() as $method) {
              require_once($CFG->dirroot.'/grade/grading/form/'.$method.'/lib.php');
              $details  = call_user_func('gradingform_'.$method.'_controller::get_external_instance_filling_details');
              if ($details != null) {
                  $items = array();
                  foreach ($details as $key => $value) {
                      $details[$key]->required = VALUE_OPTIONAL;
                      $items[$key] = $value;
                  }
                  $instance[$method] = new external_single_structure($items, 'items', VALUE_OPTIONAL);
              }
          }
          return new external_single_structure($instance);
      }
code: private static function grading_instance() {
          global $CFG;
          $instance = array();
          $instance['id']                = new external_value(PARAM_INT, 'instance id');
          $instance['raterid']           = new external_value(PARAM_INT, 'rater id');
          $instance['itemid']            = new external_value(PARAM_INT, 'item id');
          $instance['rawgrade']          = new external_value(PARAM_TEXT, 'raw grade', VALUE_OPTIONAL);
          $instance['status']            = new external_value(PARAM_INT, 'status');
          $instance['feedback']          = new external_value(PARAM_RAW, 'feedback', VALUE_OPTIONAL);
          $instance['feedbackformat']    = new external_format_value('feedback', VALUE_OPTIONAL);
          $instance['timemodified']      = new external_value(PARAM_INT, 'modified time');
          foreach (self::get_grading_methods() as $method) {
              require_once($CFG->dirroot.'/grade/grading/form/'.$method.'/lib.php');
              $details  = call_user_func('gradingform_'.$method.'_controller::get_external_instance_filling_details');
              if ($details != null) {
                  $items = array();
                  foreach ($details as $key => $value) {
                      $details[$key]->required = VALUE_OPTIONAL;
                      $items[$key] = $value;
                  }
                  $instance[$method] = new external_single_structure($items, 'items', VALUE_OPTIONAL);
              }
          }
          return new external_single_structure($instance);
      }
code_tokens: private static function grading_instance ( ) { global $ CFG ; $ instance = array ( ) ; $ instance [ 'id' ] = new external_value ( PARAM_INT , 'instance id' ) ; $ instance [ 'raterid' ] = new external_value ( PARAM_INT , 'rater id' ) ; $ instance [ 'itemid' ] = new external_value ( PARAM_INT , 'item id' ) ; $ instance [ 'rawgrade' ] = new external_value ( PARAM_TEXT , 'raw grade' , VALUE_OPTIONAL ) ; $ instance [ 'status' ] = new external_value ( PARAM_INT , 'status' ) ; $ instance [ 'feedback' ] = new external_value ( PARAM_RAW , 'feedback' , VALUE_OPTIONAL ) ; $ instance [ 'feedbackformat' ] = new external_format_value ( 'feedback' , VALUE_OPTIONAL ) ; $ instance [ 'timemodified' ] = new external_value ( PARAM_INT , 'modified time' ) ; foreach ( self :: get_grading_methods ( ) as $ method ) { require_once ( $ CFG -> dirroot . '/grade/grading/form/' . $ method . '/lib.php' ) ; $ details = call_user_func ( 'gradingform_' . $ method . '_controller::get_external_instance_filling_details' ) ; if ( $ details != null ) { $ items = array ( ) ; foreach ( $ details as $ key => $ value ) { $ details [ $ key ] -> required = VALUE_OPTIONAL ; $ items [ $ key ] = $ value ; } $ instance [ $ method ] = new external_single_structure ( $ items , 'items' , VALUE_OPTIONAL ) ; } } return new external_single_structure ( $ instance ) ; }
docstring: Creates a grading instance
  
  @return external_single_structure
  @since  Moodle 2.6
docstring_tokens: Creates a grading instance