Module: Autotype

Defined in:
lib/autotype.rb,
lib/autotype/engine.rb,
lib/autotype/profile.rb,
lib/autotype/version.rb,
lib/autotype/type_string.rb,
lib/autotype/native_bridge.rb,
lib/autotype/discovery_profile.rb

Defined Under Namespace

Modules: NativeBridge, TypeString Classes: Analyzer, CLI, Capability, Collector, Configuration, DiscoveryProfile, FixedPointInferencer, Function, Generic, HeuristicCapabilityNamer, HtmlDocument, InferenceMetadata, MethodResult, Named, OpenAiCapabilityNamer, Parameter, Renderer, TemplateArgument, TypeVariable, Union, UniversalHelperRegistry

Constant Summary collapse

CORE_MEMBER_NAME_TYPES =

Heuristic member-name -> type mappings used when no explicit declaration exists. Common field names across Ruby codebases, not framework-specific.

{
  name: "String",
  id: "String",
  text: "String",
  content: "String",
  title: "String",
  url: "String",
  uri: "String",
  email: "String",
  description: "String",
  status: "String",
  type: "String",
  kind: "String",
  key: "String",
  label: "String",
  path: "String",
  token: "String",
  query: "String",
  message: "String",
  body: "String",
  uuid: "String",
  code: "String",
  role: "String",
  object: "String",
  source: "String",
  step: "Integer",
  sequence_id: "Integer",
  count: "Integer",
  size: "Integer",
  page: "Integer",
  per_page: "Integer",
  timeout: "Integer",
  iteration: "Integer",
  status_code: "Integer",
  total_count: "Integer",
  concept_type: "String",
  core_phrase: "String",
  hashed_id: "String",
  collection: "String",
  distance: "Float"
}.freeze
KERNEL_CLASS_CALLS =

Kernel module functions invoked without an explicit receiver (Array(x)).

%i[Array Integer Float String Symbol Hash].freeze
RESERVED_TYPE_NAMES =

Type names that must not be treated as literal hash key strings.

%w[String Symbol Integer Float Rational Complex bool nil Object].freeze
VERSION =
"0.1.0"

Class Method Summary collapse

Class Method Details

.configurationObject



5
6
7
# File 'lib/autotype/profile.rb', line 5

def configuration
  @configuration ||= Configuration.new
end

.configure {|configuration| ... } ⇒ Object

Yields:



9
10
11
12
# File 'lib/autotype/profile.rb', line 9

def configure
  yield(configuration) if block_given?
  configuration
end

.profileObject



14
15
16
# File 'lib/autotype/profile.rb', line 14

def profile
  configure.load_profile
end

.reset_configuration!Object



18
19
20
# File 'lib/autotype/profile.rb', line 18

def reset_configuration!
  @configuration = nil
end

.run(argv = ARGV) ⇒ Object



11
12
13
# File 'lib/autotype.rb', line 11

def run(argv = ARGV)
  CLI.run(argv)
end