/[eiffelstudio]/branches/eth/eve/Src/framework/code_analysis/rules/ca_unused_argument_rule.e
ViewVC logotype

Diff of /branches/eth/eve/Src/framework/code_analysis/rules/ca_unused_argument_rule.e

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 93176 by zurfluhs, Mon Oct 28 12:30:08 2013 UTC revision 93177 by zurfluhs, Mon Oct 28 22:16:38 2013 UTC
# Line 21  feature {NONE} -- Initialization Line 21  feature {NONE} -- Initialization
21                          create violations.make                          create violations.make
22                  end                  end
23    
24  feature -- Activation  feature {NONE} -- Activation
25    
26          prepare_checking (a_checker: CA_ALL_RULES_CHECKER)          register_actions (a_checker: CA_ALL_RULES_CHECKER)
27                  do                  do
28                          a_checker.add_feature_pre_action (agent process_feature)                          a_checker.add_feature_pre_action (agent process_feature)
29                          a_checker.add_body_pre_action (agent process_body)                          a_checker.add_body_pre_action (agent process_body)
30                          a_checker.add_body_post_action (agent post_process_body)                          a_checker.add_body_post_action (agent post_process_body)
31                          a_checker.add_id_pre_action (agent process_id)                          a_checker.add_id_pre_action (agent process_id)
                         violations.wipe_out  
32                  end                  end
33    
34  feature -- Properties  feature -- Properties
# Line 56  feature -- Properties Line 55  feature -- Properties
55                          Result := False                          Result := False
56                  end                  end
57    
58            format_violation_description (a_violation: CA_RULE_VIOLATION; a_formatter: TEXT_FORMATTER)
59                    do
60                            a_formatter.add_string ("Routine '")
61                            if attached {FEATURE_AS} a_violation.long_description_info.first as l_feature then
62                                    a_formatter.add_feature_name (l_feature.feature_name.name_32, a_violation.affected_class)
63                            else
64                                    a_formatter.add_char ('?')
65                            end
66                            a_formatter.add_string ("' has unused arguments.")
67                    end
68    
69  feature {NONE} -- Rule Checking  feature {NONE} -- Rule Checking
70    
71          process_feature (a_feature_as: FEATURE_AS)          process_feature (a_feature_as: FEATURE_AS)
72                  do                  do
73                          feature_id := a_feature_as.feature_name                          current_feature := a_feature_as
74                  end                  end
75    
76          process_body (a_body_as: BODY_AS)          process_body (a_body_as: BODY_AS)
# Line 81  feature {NONE} -- Rule Checking Line 91  feature {NONE} -- Rule Checking
91                  do                  do
92                          if has_arguments and then not arg_ids.is_empty then                          if has_arguments and then not arg_ids.is_empty then
93                                  create l_violation.make_with_rule (Current)                                  create l_violation.make_with_rule (Current)
94  --                              l_violation.set_affected_class ()                                  l_violation.set_affected_class (checking_class)
95                                  l_violation.set_location (routine_body.start_location)                                  l_violation.set_location (routine_body.start_location)
96                                  l_violation.set_long_description ("Routine '" + feature_id.name_8 + "' has unused arguments.")                                  l_violation.long_description_info.extend (current_feature)
97                                  violations.extend (l_violation)                                  violations.extend (l_violation)
98                          end                          end
99                  end                  end
# Line 106  feature {NONE} -- Rule Checking Line 116  feature {NONE} -- Rule Checking
116                  end                  end
117    
118          has_arguments: BOOLEAN          has_arguments: BOOLEAN
119          feature_id: ID_AS          current_feature: FEATURE_AS
120          routine_body: BODY_AS          routine_body: BODY_AS
121          arg_ids: LINKED_LIST[INTEGER]          arg_ids: LINKED_LIST[INTEGER]
122    

Legend:
Removed from v.93176  
changed lines
  Added in v.93177

  ViewVC Help
Powered by ViewVC 1.1.23