Domanda

Sto documentando un po 'di codice Ruby in questo momento. Abbiamo due classi che hanno entrambi un metodo chiamato "host".

In una di queste classi il metodo necessita di alcuni commenti speciali. Nell'altra classe vorrei fare riferimento alla prima classe e avere quel riferimento ad essa.

Normalmente in RDOC, digitare il nome di un metodo è sufficiente per generare un collegamento. In questo caso, anche se scrivo Class::SubClass.host Il collegamento insiste ancora nel puntare al metodo della classe corrente.

Qualche maestro RDOC là fuori sanno come farlo?

Ecco un esempio in FakeTown::Api dove voglio collegarmi a RealTown::ApiMetodo #host :

# Returns the host as defined in config.yml under the heading "url".
# 
# It appears as though this method is no longer in use, as
# features/support/vcr_config.rb contains its own method
# by the same name which directly references RealTown::Api#url
def host
  uri = URI.parse url
  uri.host
end

Il collegamento prodotto da RDOC si collega in modo inutilmente indietro al #host metodo in questo documento.

Grazie!

È stato utile?

Soluzione

Probabilmente vuoi collegarti al metodo di istanza, non al metodo di classe. Class::SubClass#host dovrebbe funzionare.

L'esempio seguente fa, ciò che stai descrivendo.

class A
  # first method
  def a
  end
end

class B
  # second method linking to A#a
  def a
  end
end
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top