function coder_comment_reviews in Coder 6
Same name and namespace in other branches
- 5.2 includes/coder_comment.inc \coder_comment_reviews()
- 5 includes/coder_comment.inc \coder_comment_reviews()
- 6.2 includes/coder_comment.inc \coder_comment_reviews()
Implementation of hook_reviews().
File
- includes/
coder_comment.inc, line 11 - This include file implements coder functionality for comments.
Code
function coder_comment_reviews() {
$rules = array(
array(
'#type' => 'grep_invert',
'#source' => 'comment',
'#value' => '$Id',
'#case-sensitive' => TRUE,
'#warning_callback' => '_coder_comment_Id_warning',
'#filename-not' => '\\.patch$',
),
array(
'#type' => 'regex',
'#source' => 'comment',
'#value' => '^.*\\$Id.*$',
'#not' => '^\\/\\/\\s+\\$Id\\$|^\\/\\/\\s+\\$Id' . ':[^\\$]+\\$',
'#case-sensitive' => TRUE,
'#warning_callback' => '_coder_comment_Id_warning',
),
array(
'#type' => 'regex',
'#source' => 'comment',
'#value' => '^\\*',
'#warning' => 'indent secondary line of comment one space ',
'#severity' => 'minor',
),
array(
'#type' => 'regex',
'#source' => 'comment',
'#value' => '^\\s*\\*.+|^\\/\\*.+',
'#not' => '^\\s*\\*\\s+|^\\/\\*\\s+|^\\/\\*\\*|^\\s*\\*\\/',
'#warning' => 'put a space between the asterisk and the comment text',
'#severity' => 'minor',
),
array(
'#type' => 'regex',
'#source' => 'comment',
'#value' => '.*\\@see\\s*',
'#not' => '^\\s*\\*\\s*\\@see.*$',
'#warning' => '@see should always be at the beginning of a line, never inline in other comments.',
'#severity' => 'minor',
),
array(
'#type' => 'regex',
'#source' => 'comment',
'#value' => '\\@see\\s*.*',
'#not' => '^\\@see\\s*[a-zA-Z_\\.\\-]+\\(\\)',
'#warning' => '@see should always be followed by a function name with ()',
'#severity' => 'minor',
),
array(
'#type' => 'regex',
'#source' => 'comment',
'#value' => '\\@see\\s*.*?[\\.\\,;]+\\s*$',
'#warning' => '@see should have no trailing punctuation',
'#severity' => 'minor',
),
array(
'#type' => 'regex',
'#source' => 'comment',
'#value' => '\\@see\\s*[a-zA-Z_\\.]+\\(\\)(\\s+[a-zA-Z_\\.\\-]+)+',
'#warning' => '@see references should be separated from the function name by ", "',
'#severity' => 'minor',
),
array(
'#type' => 'regex',
'#source' => 'comment',
'#value' => '\\@see\\s*[a-zA-Z_\\.]+\\(\\),.*?(\\s+[a-zA-Z_\\.\\-]+){2,}',
'#warning' => '@see references should be separated by ", "',
'#severity' => 'minor',
),
array(
'#type' => 'grep_invert',
'#source' => 'comment',
'#value' => '@' . 'file',
'#warning_callback' => '_coder_comment_missing_file_block',
'#filename-not' => '\\.patch$',
),
array(
'#type' => 'regex',
'#source' => 'comment',
'#value' => '@' . 'file\\s+.+$',
'#warning_callback' => '_coder_comment_invalid_file_block',
'#severity' => 'minor',
),
array(
'#type' => 'regex',
'#source' => 'comment',
'#value' => 'Implementation\\s+of\\s+hook_\\w+\\(\\)\\s*$',
'#warning' => 'Missing period',
'#severity' => 'minor',
),
array(
'#type' => 'regex',
'#source' => 'comment',
'#value' => 'Implementation\\s+of\\s+hook_\\w+\\s*\\.*$',
'#warning' => 'Missing parenthesis after function name',
'#severity' => 'minor',
),
array(
'#type' => 'regex',
'#source' => 'comment',
'#value' => '^.*\\s+of\\s+hook_\\w+',
'#not' => '^\\s\\*\\sImplementation\\s+of\\s+hook_\\w+',
'#warning' => 'Format should be <code>* Implementation of hook_foo().</code>',
'#severity' => 'minor',
),
array(
'#type' => 'regex',
'#source' => 'comment',
'#value' => 'implementation\\s+of\\s+hook_\\w+',
'#warning' => '\'Implementation\' should be at the start of the sentence and begin with a capitialized letter',
'#severity' => 'minor',
'#case-sensitive' => TRUE,
),
);
$review = array(
'#title' => t('Drupal Commenting Standards'),
'#link' => 'http://drupal.org/node/318',
'#rules' => $rules,
'#description' => t('every developer should use'),
);
return array(
'comment' => $review,
);
}