lib/tapioca/rbi_ext/model.rb in tapioca-0.8.3 vs lib/tapioca/rbi_ext/model.rb in tapioca-0.9.0

- old
+ new

@@ -70,11 +70,11 @@ upper: T.nilable(String), lower: T.nilable(String) ).void end def create_type_variable(name, type:, variance: :invariant, fixed: nil, upper: nil, lower: nil) - value = Tapioca::TypeVariableHelper.serialize_type_variable(type, variance, fixed, upper, lower) + value = Tapioca::RBIHelper.serialize_type_variable(type, variance, fixed, upper, lower) create_node(RBI::TypeMember.new(name, value)) end sig do params( @@ -84,11 +84,11 @@ class_method: T::Boolean, visibility: RBI::Visibility ).void end def create_method(name, parameters: [], return_type: "T.untyped", class_method: false, visibility: RBI::Public.new) - return unless valid_method_name?(name) + return unless Tapioca::RBIHelper.valid_method_name?(name) sig = RBI::Sig.new(return_type: return_type) method = RBI::Method.new(name, sigs: [sig], is_singleton: class_method, visibility: visibility) parameters.each do |param| method << param.param @@ -96,22 +96,9 @@ end self << method end private - - SPECIAL_METHOD_NAMES = T.let( - ["!", "~", "+@", "**", "-@", "*", "/", "%", "+", "-", "<<", ">>", "&", "|", "^", "<", "<=", "=>", ">", ">=", - "==", "===", "!=", "=~", "!~", "<=>", "[]", "[]=", "`",].freeze, - T::Array[String] - ) - - sig { params(name: String).returns(T::Boolean) } - def valid_method_name?(name) - return true if SPECIAL_METHOD_NAMES.include?(name) - - !!name.match(/^[a-zA-Z_][[:word:]]*[?!=]?$/) - end sig { returns(T::Hash[String, RBI::Node]) } def nodes_cache T.must(@nodes_cache ||= T.let({}, T.nilable(T::Hash[String, Node]))) end