@suss/adapter-ruby 0.35.1 → 0.36.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/index.cjs +1087 -474
- package/dist/index.d.cts +57 -12
- package/dist/index.d.ts +57 -12
- package/dist/index.js +1089 -456
- package/package.json +8 -8
package/dist/index.d.cts
CHANGED
|
@@ -2,8 +2,8 @@ import { Database } from '@suss/datalog';
|
|
|
2
2
|
import { Tree, Node } from 'web-tree-sitter';
|
|
3
3
|
export { Node as RbNode, Tree as RbTree } from 'web-tree-sitter';
|
|
4
4
|
import { TypeShape, RequestSpellingMetadata, Effect, BehavioralSummary } from '@suss/behavioral-ir';
|
|
5
|
+
import { DeclaredEntryPoint, RawCodeStructure, TimingReport, ExtractionReport, CacheDiagnostic, ExtractorOptions, DeclaredModule, KeptParses } from '@suss/extractor';
|
|
5
6
|
import { UnwrapsByName, WhyExplained } from '@suss/resolution';
|
|
6
|
-
import { RawCodeStructure, TimingReport, ExtractionReport, CacheDiagnostic, ExtractorOptions, DeclaredModule, KeptParses } from '@suss/extractor';
|
|
7
7
|
import { Value } from '@suss/values';
|
|
8
8
|
|
|
9
9
|
/**
|
|
@@ -284,6 +284,12 @@ interface AncestorLookup {
|
|
|
284
284
|
* file is visible without a file of its own.
|
|
285
285
|
*/
|
|
286
286
|
localDefinition?(qualifiedName: string): ReachedBody[] | null;
|
|
287
|
+
/**
|
|
288
|
+
* The blocks any file in the run defines under a name, consulted after
|
|
289
|
+
* `localDefinition` and before the path convention. The path convention
|
|
290
|
+
* then only finds a class the run did not read.
|
|
291
|
+
*/
|
|
292
|
+
definedInRun?(qualifiedName: string): Promise<ReachedBody[] | null>;
|
|
287
293
|
}
|
|
288
294
|
/**
|
|
289
295
|
* Every block a file defines under `qualifiedName`, or null when no file
|
|
@@ -352,9 +358,22 @@ interface RubyPack {
|
|
|
352
358
|
* cache key, so editing one of them forces a re-extract.
|
|
353
359
|
*/
|
|
354
360
|
discoveryInputs?: (files: readonly string[]) => string[];
|
|
361
|
+
/**
|
|
362
|
+
* Files the library renders through ERB when the app boots, such as
|
|
363
|
+
* Rails' `config/database.yml`, as absolute paths. The adapter reads
|
|
364
|
+
* each one as the Ruby in its tags, run when the app loads, so a read of
|
|
365
|
+
* `ENV` there goes on a load-time unit for the file.
|
|
366
|
+
*/
|
|
367
|
+
bootTemplates?: () => string[];
|
|
355
368
|
/** Wire protocol for the boundary bindings the pack produces, e.g. "http-graphql". */
|
|
356
369
|
protocol: string;
|
|
357
370
|
discovery: RubyDiscoveryPattern[];
|
|
371
|
+
/**
|
|
372
|
+
* The methods a deploy manifest says the platform calls in a file,
|
|
373
|
+
* given the file's absolute path. The adapter builds the units on each
|
|
374
|
+
* method it finds by name, and the call walk starts there.
|
|
375
|
+
*/
|
|
376
|
+
entryPoints?: (file: string) => DeclaredEntryPoint[];
|
|
358
377
|
/** The calls the library offers a project for making a request. */
|
|
359
378
|
clients?: RbClientCall[];
|
|
360
379
|
/** The library's model calls that read or write the database. */
|
|
@@ -954,6 +973,23 @@ interface RbFormatSwitch {
|
|
|
954
973
|
/** The format that accepts every request, `any` for Rails. */
|
|
955
974
|
matchesEvery?: string;
|
|
956
975
|
}
|
|
976
|
+
/**
|
|
977
|
+
* The methods a library runs on a wired class before the one that
|
|
978
|
+
* resolves the field. A hook that raises ends the field with that
|
|
979
|
+
* exception. A hook whose value is false or nil stops the field, and the
|
|
980
|
+
* resolver never runs. Any other value lets the field go on to the next
|
|
981
|
+
* hook, then to the resolver.
|
|
982
|
+
*/
|
|
983
|
+
interface RbResolverHooks {
|
|
984
|
+
/** The hook methods, in the order the library runs them. */
|
|
985
|
+
methods: string[];
|
|
986
|
+
/**
|
|
987
|
+
* True when the library takes a list's first element as the hook's
|
|
988
|
+
* answer, so `return false, payload` stops the field and returns the
|
|
989
|
+
* payload in its place.
|
|
990
|
+
*/
|
|
991
|
+
answerIsListHead?: boolean;
|
|
992
|
+
}
|
|
957
993
|
/** A class or module whose ancestry reaches one of `baseClassNames` declares GraphQL fields through DSL calls in its own body. */
|
|
958
994
|
interface GraphqlObjectFields {
|
|
959
995
|
type: "graphqlObjectFields";
|
|
@@ -975,6 +1011,10 @@ interface GraphqlObjectFields {
|
|
|
975
1011
|
wiringKeywords: string[];
|
|
976
1012
|
/** The method a wired class defines to resolve the field it is wired to. */
|
|
977
1013
|
resolverMethodName: string;
|
|
1014
|
+
/** The keyword on a field call that says which of the type's own methods resolves it, in place of the method with the field's name. */
|
|
1015
|
+
resolverMethodKeyword?: string;
|
|
1016
|
+
/** The methods the library runs on a wired class before `resolverMethodName`, any of which can stop the field. */
|
|
1017
|
+
resolverHooks?: RbResolverHooks;
|
|
978
1018
|
/** The library's own classes that a project's class chain ends at. */
|
|
979
1019
|
ancestryRootClassNames: string[];
|
|
980
1020
|
/** The keyword on an argument call that says whether the argument is required. */
|
|
@@ -1009,6 +1049,20 @@ interface GraphqlObjectFields {
|
|
|
1009
1049
|
};
|
|
1010
1050
|
}
|
|
1011
1051
|
|
|
1052
|
+
/**
|
|
1053
|
+
* The calls a body makes, as invocation effects. A call written under an
|
|
1054
|
+
* `if` records that test as a precondition, and the IR treats a call
|
|
1055
|
+
* with preconditions as one that does not always run.
|
|
1056
|
+
*/
|
|
1057
|
+
|
|
1058
|
+
/** Methods the pack says the library defines, so a receiverless call to one of them is not project work. */
|
|
1059
|
+
type InheritedMethods = ReadonlySet<string>;
|
|
1060
|
+
/** An effect a reader built from the source, and the node it built it from. */
|
|
1061
|
+
interface EffectAt {
|
|
1062
|
+
effect: Effect;
|
|
1063
|
+
at: Node;
|
|
1064
|
+
}
|
|
1065
|
+
|
|
1012
1066
|
/**
|
|
1013
1067
|
* Finds the calls in a Ruby body that read or write the database.
|
|
1014
1068
|
*
|
|
@@ -1050,16 +1104,7 @@ declare function storageClaims(call: Node, file: string, options: RbStorageOptio
|
|
|
1050
1104
|
* calls were read from, which the constant bindings are keyed on.
|
|
1051
1105
|
* `enclosing` is the method the calls are in, or null outside one.
|
|
1052
1106
|
*/
|
|
1053
|
-
declare function storageEffects(calls: readonly Node[], file: string, options: RbStorageOptions, enclosing?: Node | null):
|
|
1054
|
-
|
|
1055
|
-
/**
|
|
1056
|
-
* The calls a body makes, as invocation effects. A call written under an
|
|
1057
|
-
* `if` records that test as a precondition, and the IR treats a call
|
|
1058
|
-
* with preconditions as one that does not always run.
|
|
1059
|
-
*/
|
|
1060
|
-
|
|
1061
|
-
/** Methods the pack says the library defines, so a receiverless call to one of them is not project work. */
|
|
1062
|
-
type InheritedMethods = ReadonlySet<string>;
|
|
1107
|
+
declare function storageEffects(calls: readonly Node[], file: string, options: RbStorageOptions, enclosing?: Node | null): EffectAt[];
|
|
1063
1108
|
|
|
1064
1109
|
/**
|
|
1065
1110
|
* The shared groups a run's test files define, and where each one is
|
|
@@ -1507,4 +1552,4 @@ declare function typeShapeFromNode(node: Node, ctx: TypeReadContext): TypeShape
|
|
|
1507
1552
|
*/
|
|
1508
1553
|
declare const ADAPTER_VERSION = "0.1.0";
|
|
1509
1554
|
|
|
1510
|
-
export { ADAPTER_VERSION, type AncestorEntry, type AncestorLookup, type Ancestry, type CallArgs, type ClassInfo, type ConstantFileCache, type ConstantPathConvention, type ControllerActions, type ControllerRoute, type DiscoveryOptions, type EvaluatedFile, type ExtractRubyOptions, type ExtractRubyResult, type FileCache, type FileConstants, type FileFactsOptions, type GraphqlObjectFields, type GraphqlTypeNameConvention, type KeptRubyParses, type LibraryException, type MethodLookup, type ParameterBindings, type ProjectNodes, type Range, type RbAddressingCall, type RbArgumentPlace, type RbBodyBlock, type RbExpectations, type RbFactories, type RbFactoryBuilder, type RbFormatSwitch, type RbInflections, type RbPredicateMatcher, type RbRawSqlPattern, type RbRowCall, type RbSharedInclude, type RbStatusCall, type RbStorageOptions, type RbStoragePattern, type RbTestCases, type RbTestClasses, type RbTestMocks, type ReachedBody, type RubyDiscoveryPattern, type RubyExtendsSite, type RubyPack, type RubyRequireSite, type RubyStubEvidence, type RubyStubEvidenceOptions, type RubyValueHandle, RubyWhySession, type RubyWhySessionOptions, type TypeReadContext, ancestryOf, bindEvaluator, bodyStatements, booleanLiteralValue, children, collectFileConstants, createConstantFileCache, createFileCache, discoverUnits, emitConstantBindings, emitValueFacts, evaluatedValue, extractRubyProject, factsForFile, field, findRubyFiles, graphqlTypeNameFromQualified, hashKeySymbolName, inheritedStatements, keptRubyParses, methodDefinitionsIn, methodInAncestry, nestedStatements, nodeId, parseRuby, parseRubyAhead, parseRubySync, preloadRubyGrammar, qualifyConstantRef, reachDefinition, readCallArgs, readKey, resolveConstantFile, rubyStubEvidence, runStatements, storageClaims, storageEffects, stringLiteralValue, stringValueOf, symbolValue, typeShapeFromNode, underscoreConstantPath, walkClasses, walkDefinitions };
|
|
1555
|
+
export { ADAPTER_VERSION, type AncestorEntry, type AncestorLookup, type Ancestry, type CallArgs, type ClassInfo, type ConstantFileCache, type ConstantPathConvention, type ControllerActions, type ControllerRoute, type DiscoveryOptions, type EvaluatedFile, type ExtractRubyOptions, type ExtractRubyResult, type FileCache, type FileConstants, type FileFactsOptions, type GraphqlObjectFields, type GraphqlTypeNameConvention, type KeptRubyParses, type LibraryException, type MethodLookup, type ParameterBindings, type ProjectNodes, type Range, type RbAddressingCall, type RbArgumentPlace, type RbBodyBlock, type RbExpectations, type RbFactories, type RbFactoryBuilder, type RbFormatSwitch, type RbInflections, type RbPredicateMatcher, type RbRawSqlPattern, type RbResolverHooks, type RbRowCall, type RbSharedInclude, type RbStatusCall, type RbStorageOptions, type RbStoragePattern, type RbTestCases, type RbTestClasses, type RbTestMocks, type ReachedBody, type RubyDiscoveryPattern, type RubyExtendsSite, type RubyPack, type RubyRequireSite, type RubyStubEvidence, type RubyStubEvidenceOptions, type RubyValueHandle, RubyWhySession, type RubyWhySessionOptions, type TypeReadContext, ancestryOf, bindEvaluator, bodyStatements, booleanLiteralValue, children, collectFileConstants, createConstantFileCache, createFileCache, discoverUnits, emitConstantBindings, emitValueFacts, evaluatedValue, extractRubyProject, factsForFile, field, findRubyFiles, graphqlTypeNameFromQualified, hashKeySymbolName, inheritedStatements, keptRubyParses, methodDefinitionsIn, methodInAncestry, nestedStatements, nodeId, parseRuby, parseRubyAhead, parseRubySync, preloadRubyGrammar, qualifyConstantRef, reachDefinition, readCallArgs, readKey, resolveConstantFile, rubyStubEvidence, runStatements, storageClaims, storageEffects, stringLiteralValue, stringValueOf, symbolValue, typeShapeFromNode, underscoreConstantPath, walkClasses, walkDefinitions };
|
package/dist/index.d.ts
CHANGED
|
@@ -2,8 +2,8 @@ import { Database } from '@suss/datalog';
|
|
|
2
2
|
import { Tree, Node } from 'web-tree-sitter';
|
|
3
3
|
export { Node as RbNode, Tree as RbTree } from 'web-tree-sitter';
|
|
4
4
|
import { TypeShape, RequestSpellingMetadata, Effect, BehavioralSummary } from '@suss/behavioral-ir';
|
|
5
|
+
import { DeclaredEntryPoint, RawCodeStructure, TimingReport, ExtractionReport, CacheDiagnostic, ExtractorOptions, DeclaredModule, KeptParses } from '@suss/extractor';
|
|
5
6
|
import { UnwrapsByName, WhyExplained } from '@suss/resolution';
|
|
6
|
-
import { RawCodeStructure, TimingReport, ExtractionReport, CacheDiagnostic, ExtractorOptions, DeclaredModule, KeptParses } from '@suss/extractor';
|
|
7
7
|
import { Value } from '@suss/values';
|
|
8
8
|
|
|
9
9
|
/**
|
|
@@ -284,6 +284,12 @@ interface AncestorLookup {
|
|
|
284
284
|
* file is visible without a file of its own.
|
|
285
285
|
*/
|
|
286
286
|
localDefinition?(qualifiedName: string): ReachedBody[] | null;
|
|
287
|
+
/**
|
|
288
|
+
* The blocks any file in the run defines under a name, consulted after
|
|
289
|
+
* `localDefinition` and before the path convention. The path convention
|
|
290
|
+
* then only finds a class the run did not read.
|
|
291
|
+
*/
|
|
292
|
+
definedInRun?(qualifiedName: string): Promise<ReachedBody[] | null>;
|
|
287
293
|
}
|
|
288
294
|
/**
|
|
289
295
|
* Every block a file defines under `qualifiedName`, or null when no file
|
|
@@ -352,9 +358,22 @@ interface RubyPack {
|
|
|
352
358
|
* cache key, so editing one of them forces a re-extract.
|
|
353
359
|
*/
|
|
354
360
|
discoveryInputs?: (files: readonly string[]) => string[];
|
|
361
|
+
/**
|
|
362
|
+
* Files the library renders through ERB when the app boots, such as
|
|
363
|
+
* Rails' `config/database.yml`, as absolute paths. The adapter reads
|
|
364
|
+
* each one as the Ruby in its tags, run when the app loads, so a read of
|
|
365
|
+
* `ENV` there goes on a load-time unit for the file.
|
|
366
|
+
*/
|
|
367
|
+
bootTemplates?: () => string[];
|
|
355
368
|
/** Wire protocol for the boundary bindings the pack produces, e.g. "http-graphql". */
|
|
356
369
|
protocol: string;
|
|
357
370
|
discovery: RubyDiscoveryPattern[];
|
|
371
|
+
/**
|
|
372
|
+
* The methods a deploy manifest says the platform calls in a file,
|
|
373
|
+
* given the file's absolute path. The adapter builds the units on each
|
|
374
|
+
* method it finds by name, and the call walk starts there.
|
|
375
|
+
*/
|
|
376
|
+
entryPoints?: (file: string) => DeclaredEntryPoint[];
|
|
358
377
|
/** The calls the library offers a project for making a request. */
|
|
359
378
|
clients?: RbClientCall[];
|
|
360
379
|
/** The library's model calls that read or write the database. */
|
|
@@ -954,6 +973,23 @@ interface RbFormatSwitch {
|
|
|
954
973
|
/** The format that accepts every request, `any` for Rails. */
|
|
955
974
|
matchesEvery?: string;
|
|
956
975
|
}
|
|
976
|
+
/**
|
|
977
|
+
* The methods a library runs on a wired class before the one that
|
|
978
|
+
* resolves the field. A hook that raises ends the field with that
|
|
979
|
+
* exception. A hook whose value is false or nil stops the field, and the
|
|
980
|
+
* resolver never runs. Any other value lets the field go on to the next
|
|
981
|
+
* hook, then to the resolver.
|
|
982
|
+
*/
|
|
983
|
+
interface RbResolverHooks {
|
|
984
|
+
/** The hook methods, in the order the library runs them. */
|
|
985
|
+
methods: string[];
|
|
986
|
+
/**
|
|
987
|
+
* True when the library takes a list's first element as the hook's
|
|
988
|
+
* answer, so `return false, payload` stops the field and returns the
|
|
989
|
+
* payload in its place.
|
|
990
|
+
*/
|
|
991
|
+
answerIsListHead?: boolean;
|
|
992
|
+
}
|
|
957
993
|
/** A class or module whose ancestry reaches one of `baseClassNames` declares GraphQL fields through DSL calls in its own body. */
|
|
958
994
|
interface GraphqlObjectFields {
|
|
959
995
|
type: "graphqlObjectFields";
|
|
@@ -975,6 +1011,10 @@ interface GraphqlObjectFields {
|
|
|
975
1011
|
wiringKeywords: string[];
|
|
976
1012
|
/** The method a wired class defines to resolve the field it is wired to. */
|
|
977
1013
|
resolverMethodName: string;
|
|
1014
|
+
/** The keyword on a field call that says which of the type's own methods resolves it, in place of the method with the field's name. */
|
|
1015
|
+
resolverMethodKeyword?: string;
|
|
1016
|
+
/** The methods the library runs on a wired class before `resolverMethodName`, any of which can stop the field. */
|
|
1017
|
+
resolverHooks?: RbResolverHooks;
|
|
978
1018
|
/** The library's own classes that a project's class chain ends at. */
|
|
979
1019
|
ancestryRootClassNames: string[];
|
|
980
1020
|
/** The keyword on an argument call that says whether the argument is required. */
|
|
@@ -1009,6 +1049,20 @@ interface GraphqlObjectFields {
|
|
|
1009
1049
|
};
|
|
1010
1050
|
}
|
|
1011
1051
|
|
|
1052
|
+
/**
|
|
1053
|
+
* The calls a body makes, as invocation effects. A call written under an
|
|
1054
|
+
* `if` records that test as a precondition, and the IR treats a call
|
|
1055
|
+
* with preconditions as one that does not always run.
|
|
1056
|
+
*/
|
|
1057
|
+
|
|
1058
|
+
/** Methods the pack says the library defines, so a receiverless call to one of them is not project work. */
|
|
1059
|
+
type InheritedMethods = ReadonlySet<string>;
|
|
1060
|
+
/** An effect a reader built from the source, and the node it built it from. */
|
|
1061
|
+
interface EffectAt {
|
|
1062
|
+
effect: Effect;
|
|
1063
|
+
at: Node;
|
|
1064
|
+
}
|
|
1065
|
+
|
|
1012
1066
|
/**
|
|
1013
1067
|
* Finds the calls in a Ruby body that read or write the database.
|
|
1014
1068
|
*
|
|
@@ -1050,16 +1104,7 @@ declare function storageClaims(call: Node, file: string, options: RbStorageOptio
|
|
|
1050
1104
|
* calls were read from, which the constant bindings are keyed on.
|
|
1051
1105
|
* `enclosing` is the method the calls are in, or null outside one.
|
|
1052
1106
|
*/
|
|
1053
|
-
declare function storageEffects(calls: readonly Node[], file: string, options: RbStorageOptions, enclosing?: Node | null):
|
|
1054
|
-
|
|
1055
|
-
/**
|
|
1056
|
-
* The calls a body makes, as invocation effects. A call written under an
|
|
1057
|
-
* `if` records that test as a precondition, and the IR treats a call
|
|
1058
|
-
* with preconditions as one that does not always run.
|
|
1059
|
-
*/
|
|
1060
|
-
|
|
1061
|
-
/** Methods the pack says the library defines, so a receiverless call to one of them is not project work. */
|
|
1062
|
-
type InheritedMethods = ReadonlySet<string>;
|
|
1107
|
+
declare function storageEffects(calls: readonly Node[], file: string, options: RbStorageOptions, enclosing?: Node | null): EffectAt[];
|
|
1063
1108
|
|
|
1064
1109
|
/**
|
|
1065
1110
|
* The shared groups a run's test files define, and where each one is
|
|
@@ -1507,4 +1552,4 @@ declare function typeShapeFromNode(node: Node, ctx: TypeReadContext): TypeShape
|
|
|
1507
1552
|
*/
|
|
1508
1553
|
declare const ADAPTER_VERSION = "0.1.0";
|
|
1509
1554
|
|
|
1510
|
-
export { ADAPTER_VERSION, type AncestorEntry, type AncestorLookup, type Ancestry, type CallArgs, type ClassInfo, type ConstantFileCache, type ConstantPathConvention, type ControllerActions, type ControllerRoute, type DiscoveryOptions, type EvaluatedFile, type ExtractRubyOptions, type ExtractRubyResult, type FileCache, type FileConstants, type FileFactsOptions, type GraphqlObjectFields, type GraphqlTypeNameConvention, type KeptRubyParses, type LibraryException, type MethodLookup, type ParameterBindings, type ProjectNodes, type Range, type RbAddressingCall, type RbArgumentPlace, type RbBodyBlock, type RbExpectations, type RbFactories, type RbFactoryBuilder, type RbFormatSwitch, type RbInflections, type RbPredicateMatcher, type RbRawSqlPattern, type RbRowCall, type RbSharedInclude, type RbStatusCall, type RbStorageOptions, type RbStoragePattern, type RbTestCases, type RbTestClasses, type RbTestMocks, type ReachedBody, type RubyDiscoveryPattern, type RubyExtendsSite, type RubyPack, type RubyRequireSite, type RubyStubEvidence, type RubyStubEvidenceOptions, type RubyValueHandle, RubyWhySession, type RubyWhySessionOptions, type TypeReadContext, ancestryOf, bindEvaluator, bodyStatements, booleanLiteralValue, children, collectFileConstants, createConstantFileCache, createFileCache, discoverUnits, emitConstantBindings, emitValueFacts, evaluatedValue, extractRubyProject, factsForFile, field, findRubyFiles, graphqlTypeNameFromQualified, hashKeySymbolName, inheritedStatements, keptRubyParses, methodDefinitionsIn, methodInAncestry, nestedStatements, nodeId, parseRuby, parseRubyAhead, parseRubySync, preloadRubyGrammar, qualifyConstantRef, reachDefinition, readCallArgs, readKey, resolveConstantFile, rubyStubEvidence, runStatements, storageClaims, storageEffects, stringLiteralValue, stringValueOf, symbolValue, typeShapeFromNode, underscoreConstantPath, walkClasses, walkDefinitions };
|
|
1555
|
+
export { ADAPTER_VERSION, type AncestorEntry, type AncestorLookup, type Ancestry, type CallArgs, type ClassInfo, type ConstantFileCache, type ConstantPathConvention, type ControllerActions, type ControllerRoute, type DiscoveryOptions, type EvaluatedFile, type ExtractRubyOptions, type ExtractRubyResult, type FileCache, type FileConstants, type FileFactsOptions, type GraphqlObjectFields, type GraphqlTypeNameConvention, type KeptRubyParses, type LibraryException, type MethodLookup, type ParameterBindings, type ProjectNodes, type Range, type RbAddressingCall, type RbArgumentPlace, type RbBodyBlock, type RbExpectations, type RbFactories, type RbFactoryBuilder, type RbFormatSwitch, type RbInflections, type RbPredicateMatcher, type RbRawSqlPattern, type RbResolverHooks, type RbRowCall, type RbSharedInclude, type RbStatusCall, type RbStorageOptions, type RbStoragePattern, type RbTestCases, type RbTestClasses, type RbTestMocks, type ReachedBody, type RubyDiscoveryPattern, type RubyExtendsSite, type RubyPack, type RubyRequireSite, type RubyStubEvidence, type RubyStubEvidenceOptions, type RubyValueHandle, RubyWhySession, type RubyWhySessionOptions, type TypeReadContext, ancestryOf, bindEvaluator, bodyStatements, booleanLiteralValue, children, collectFileConstants, createConstantFileCache, createFileCache, discoverUnits, emitConstantBindings, emitValueFacts, evaluatedValue, extractRubyProject, factsForFile, field, findRubyFiles, graphqlTypeNameFromQualified, hashKeySymbolName, inheritedStatements, keptRubyParses, methodDefinitionsIn, methodInAncestry, nestedStatements, nodeId, parseRuby, parseRubyAhead, parseRubySync, preloadRubyGrammar, qualifyConstantRef, reachDefinition, readCallArgs, readKey, resolveConstantFile, rubyStubEvidence, runStatements, storageClaims, storageEffects, stringLiteralValue, stringValueOf, symbolValue, typeShapeFromNode, underscoreConstantPath, walkClasses, walkDefinitions };
|