
Inline adoc files when they are included exactly once. Also fix language tags because this inlining gives us better information on what language the code is written in.
55 lines
1.3 KiB
Plaintext
55 lines
1.3 KiB
Plaintext
== Why is this an issue?
|
|
|
|
Unlike class and instance methods, static methods don't receive an implicit first argument. Nonetheless naming the first argument ``++self++`` or ``++cls++`` guarantees confusion - either on the part of the original author, who may never understand why the arguments don't hold the values he expected, or on that of future maintainers.
|
|
|
|
|
|
=== Noncompliant code example
|
|
|
|
[source,python]
|
|
----
|
|
class MyClass:
|
|
@staticmethod
|
|
def s_meth(self, arg1, arg2): #Noncompliant
|
|
# ...
|
|
----
|
|
|
|
|
|
=== Compliant solution
|
|
|
|
[source,python]
|
|
----
|
|
class MyClass:
|
|
@staticmethod
|
|
def s_meth(arg1, arg2): #Noncompliant
|
|
# ...
|
|
----
|
|
|
|
|
|
|
|
ifdef::env-github,rspecator-view[]
|
|
|
|
'''
|
|
== Implementation Specification
|
|
(visible only on this page)
|
|
|
|
=== Message
|
|
|
|
Remove the "xxx" argument from this method definition.
|
|
|
|
|
|
'''
|
|
== Comments And Links
|
|
(visible only on this page)
|
|
|
|
=== is duplicated by: S2851
|
|
|
|
=== is duplicated by: S2852
|
|
|
|
=== on 24 Apr 2015, 09:04:19 Elena Vilchik wrote:
|
|
\[~ann.campbell.2] I would replace ``++bug++`` tag with ``++confusing++``. Or at least add it. WDYT?
|
|
|
|
=== on 28 Apr 2015, 15:36:24 Ann Campbell wrote:
|
|
\[~elena.vilchik] I've downgraded this from bug to pitfall (meaning it's not broken now but you've left a trap for the next guy)
|
|
|
|
endif::env-github,rspecator-view[]
|