Resultados da pesquisa a pedido "metaprogramming"
Obter argumentos de método usando o TracePoint do Ruby
Consigo acessar os argumentos de um método Ruby usando a API do TracePoint: def foo(foo_arg) end trace = TracePoint.trace(:call, :c_call) do |tp| tp.disable case tp.method_id when :foo, :sub method = eval("method(:#{tp.method_id})", tp.binding) ...
contexto de ruby lambda
Digamos que tenho a seguinte definição de rubi no nível mais alto callable = lambda {"#{hi}"}e suponha que mais tarde eu criei um objeto chamadotemp que tem um método chamadohi. Agora, o que eu gostaria de fazer é chamarcallable dentro do ...
É possível transformar os tipos em um pacote de parâmetros?
É possível transformar os tipos de um pacote de parâmetros e transmiti-lo? Por exemplo. dado o seguinte: template<class... Args> struct X {}; template<class T> struct make_pointer { typedef T* type; }; template<class T> struct make_pointer<T*> ...
Qual é o objetivo dos métodos bind / unbind no Ruby?
Qual é o propósito de terMethod#unbind eUnboundMethod#bind? Pelo que entendi, os métodos são objetos que podem ser chamados, como procs e lambdas, exceto que os métodos estão vinculados ao escopo de seu receptor: class SomeClass def a_method; ...
Como você lista os módulos incluídos em uma classe Ruby?
Como você listaria os módulos que foram incluídos em uma classe específica em uma hierarquia de classes no Ruby? Algo assim: module SomeModule end class ParentModel < Object include SomeModule end class ChildModel < ParentModel end p ...
Determinando os tipos de parâmetros de uma função indefinida
Eu aprendi recentemente que não posso: Pegue o endereço de uma função indefinida [https://stackoverflow.com/q/38437533/2642059]Pegue o endereço de uma função de modelo com um tipo que não seria compilado ...
Obtendo / configurando o valor padrão de um argumento dinamicamente
Comece com o seguinte cenário: class Foo def bar(baz={}) p baz end end foo = Foo.new p meth = foo.method(:bar) # => #<Method: Foo#bar> p meth.parameters # => [[:opt, :baz]]Então eu posso descobrir que o métodobar é opcional, mas como encontro o ...
Aumentando um modelo de uma gema externa
estou a usarrefinerycms [http://refinerycms.com/]em nosso site para permitir que a equipe menos técnica atualize o conteúdo. Dentro da gema, eles têm uma classe Page que mapeia cada página de nível superior no site. Eu gostaria de usar a gema ...
C ++ 0x lambdas com parâmetros de modelo? [duplicado]
Possível duplicado: As funções lambda podem ser modeladas? [https://stackoverflow.com/questions/3575901/can-lambda-functions-be-templated] É possível ter um lambda c ++ 0x com parâmetros de modelo? Por exemplo: template <typename T> [=](const T ...
r programação funcional de tabela de dados / metaprogramação / computação na linguagem
Estou explorando maneiras diferentes de agrupar uma função de agregação (mas realmente poderia ser qualquer tipo de função) usando data.table (um exemplo de dplyr também é fornecido) e estava pensando nas melhores práticas para programação / ...