Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

172
Views
¿Pueden los errores de firma inválida activarse alguna vez en el tiempo de ejecución si Sorbet ha verificado estáticamente el código?

Estaba mirando la lista de errores de tiempo de ejecución de Sorbet de los documentos . Me parece que "Errores de procesos de firma no válidos" y "Errores de firmas no válidas" serían detectados por el verificador de tipo Sorbet. Si su código pasa las comprobaciones estáticas de Sorbet, ¿está garantizado que esos errores de tiempo de ejecución nunca ocurrirán?

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Respuesta básica

Hay casos en los que pasan las comprobaciones estáticas, pero obtendrá un error de tiempo de ejecución. Considera lo siguiente:

 # typed: strict class A extend T::Sig sig {returns(Integer)} def foo; 0; end end class B < A sig {returns(String)} def foo; '0'; end end B.new.foo

Ejecutar esto terminará en:

 RuntimeError: Incompatible return type in signature for override of method `foo`

Extra

Puede evitar caer en esto asegurándose de usar overridable o (:final) ( docs ) en sus firmas cuando corresponda.

 class A extend T::Sig sig {overridable.returns(Integer)} def foo; 0; end sig (:final) {returns(Integer)} def bar; 0; end end class B < A sig {returns(String)} # this will fail static check, as it doesn't declare `override` def foo; '0'; end sig {returns(String)} # this will fail static check, as `bar` is `final` def bar; '0'; end end
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!