mirror of
https://github.com/github/codeql.git
synced 2026-05-29 18:41:27 +02:00
Merge pull request #21867 from aschackmull/ruby/callable-body
Ruby: Split callable and its body into two AST nodes.
This commit is contained in:
@@ -11,9 +11,7 @@ import codeql.ruby.controlflow.internal.ControlFlowGraphImpl as CfgImpl
|
||||
query predicate nonPostOrderExpr(Expr e, string cls) {
|
||||
cls = e.getPrimaryQlClasses() and
|
||||
not exists(e.getDesugared()) and
|
||||
not e instanceof BeginExpr and
|
||||
not e instanceof Namespace and
|
||||
not e instanceof Toplevel and
|
||||
not e instanceof BodyStmt and
|
||||
exists(AstNode last, Completion c |
|
||||
CfgImpl::last(e, last, c) and
|
||||
last != e and
|
||||
@@ -27,7 +25,7 @@ query predicate scopeNoFirst(CfgScope scope) {
|
||||
not scope =
|
||||
any(Callable c |
|
||||
not exists(c.getAParameter()) and
|
||||
not c.(BodyStmt).hasEnsure() and
|
||||
not exists(c.(BodyStmt).getARescue())
|
||||
not c.getBody().hasEnsure() and
|
||||
not exists(c.getBody().getARescue())
|
||||
)
|
||||
}
|
||||
|
||||
@@ -156,14 +156,23 @@ class ErbDirective extends TDirectiveNode, ErbAstNode {
|
||||
)
|
||||
}
|
||||
|
||||
pragma[nomagic]
|
||||
private Stmt getAChildStmt0() {
|
||||
this.containsAstNodeStart(result) and
|
||||
not this.containsAstNodeStart(result.getParent())
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a statement that starts in directive that is not a child of any other
|
||||
* statement starting in this directive.
|
||||
*/
|
||||
cached
|
||||
Stmt getAChildStmt() {
|
||||
result = this.getAChildStmt0() and
|
||||
not result instanceof BodyStmt
|
||||
or
|
||||
this.containsAstNodeStart(result) and
|
||||
not this.containsAstNodeStart(result.getParent())
|
||||
result = this.getAChildStmt0().(BodyStmt).getAStmt()
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -167,6 +167,8 @@ class StmtSequence extends Expr, TStmtSequence {
|
||||
*/
|
||||
class BodyStmt extends StmtSequence, TBodyStmt {
|
||||
final override Stmt getStmt(int n) {
|
||||
synthChild(this, n, result)
|
||||
or
|
||||
toGenerated(result) =
|
||||
rank[n + 1](Ruby::AstNode node, int i |
|
||||
node = getBodyStmtChild(this, i) and
|
||||
|
||||
@@ -8,7 +8,7 @@ private import internal.TreeSitter
|
||||
private import internal.Method
|
||||
|
||||
/** A callable. */
|
||||
class Callable extends StmtSequence, Expr, Scope, TCallable {
|
||||
class Callable extends Expr, Scope, TCallable {
|
||||
/** Gets the number of parameters of this callable. */
|
||||
final int getNumberOfParameters() { result = count(this.getAParameter()) }
|
||||
|
||||
@@ -18,27 +18,26 @@ class Callable extends StmtSequence, Expr, Scope, TCallable {
|
||||
/** Gets the `n`th parameter of this callable. */
|
||||
Parameter getParameter(int n) { none() }
|
||||
|
||||
/** Gets the body of this callable. */
|
||||
BodyStmt getBody() { none() }
|
||||
|
||||
override AstNode getAChild(string pred) {
|
||||
result = super.getAChild(pred)
|
||||
or
|
||||
pred = "getBody" and result = this.getBody()
|
||||
or
|
||||
pred = "getParameter" and result = this.getParameter(_)
|
||||
}
|
||||
}
|
||||
|
||||
/** A method. */
|
||||
class MethodBase extends Callable, BodyStmt, Scope, TMethodBase {
|
||||
class MethodBase extends Callable, Scope, TMethodBase {
|
||||
/** Gets the name of this method. */
|
||||
string getName() { none() }
|
||||
|
||||
/** Holds if the name of this method is `name`. */
|
||||
final predicate hasName(string name) { this.getName() = name }
|
||||
|
||||
override AstNode getAChild(string pred) {
|
||||
result = Callable.super.getAChild(pred)
|
||||
or
|
||||
result = BodyStmt.super.getAChild(pred)
|
||||
}
|
||||
|
||||
/**
|
||||
* Holds if this method is public.
|
||||
* Methods are public by default.
|
||||
@@ -218,6 +217,10 @@ class Method extends MethodBase, TMethod {
|
||||
toGenerated(result) = g.getParameters().getChild(n)
|
||||
}
|
||||
|
||||
final override BodyStmt getBody() {
|
||||
toGenerated(result) = g.getBody() or synthChild(this, _, result)
|
||||
}
|
||||
|
||||
final override string toString() { result = this.getName() }
|
||||
|
||||
overlay[global]
|
||||
@@ -280,6 +283,10 @@ class SingletonMethod extends MethodBase, TSingletonMethod {
|
||||
toGenerated(result) = g.getParameters().getChild(n)
|
||||
}
|
||||
|
||||
final override BodyStmt getBody() {
|
||||
toGenerated(result) = g.getBody() or synthChild(this, _, result)
|
||||
}
|
||||
|
||||
final override string toString() { result = this.getName() }
|
||||
|
||||
final override AstNode getAChild(string pred) {
|
||||
@@ -321,7 +328,7 @@ class SingletonMethod extends MethodBase, TSingletonMethod {
|
||||
* -> (x) { x + 1 }
|
||||
* ```
|
||||
*/
|
||||
class Lambda extends Callable, BodyStmt, TLambda {
|
||||
class Lambda extends Callable, TLambda {
|
||||
private Ruby::Lambda g;
|
||||
|
||||
Lambda() { this = TLambda(g) }
|
||||
@@ -332,17 +339,16 @@ class Lambda extends Callable, BodyStmt, TLambda {
|
||||
toGenerated(result) = g.getParameters().getChild(n)
|
||||
}
|
||||
|
||||
final override string toString() { result = "-> { ... }" }
|
||||
|
||||
final override AstNode getAChild(string pred) {
|
||||
result = Callable.super.getAChild(pred)
|
||||
or
|
||||
result = BodyStmt.super.getAChild(pred)
|
||||
final override BodyStmt getBody() {
|
||||
toGenerated(result) = g.getBody().(Ruby::DoBlock).getBody() or
|
||||
toGenerated(result) = g.getBody().(Ruby::Block).getBody()
|
||||
}
|
||||
|
||||
final override string toString() { result = "-> { ... }" }
|
||||
}
|
||||
|
||||
/** A block. */
|
||||
class Block extends Callable, StmtSequence, Scope, TBlock {
|
||||
class Block extends Callable, Scope, TBlock {
|
||||
/**
|
||||
* Gets a local variable declared by this block.
|
||||
* For example `local` in `{ | param; local| puts param }`.
|
||||
@@ -355,17 +361,15 @@ class Block extends Callable, StmtSequence, Scope, TBlock {
|
||||
*/
|
||||
LocalVariableWriteAccess getLocalVariable(int n) { none() }
|
||||
|
||||
override AstNode getAChild(string pred) {
|
||||
final override AstNode getAChild(string pred) {
|
||||
result = Callable.super.getAChild(pred)
|
||||
or
|
||||
result = StmtSequence.super.getAChild(pred)
|
||||
or
|
||||
pred = "getLocalVariable" and result = this.getLocalVariable(_)
|
||||
}
|
||||
}
|
||||
|
||||
/** A block enclosed within `do` and `end`. */
|
||||
class DoBlock extends Block, BodyStmt, TDoBlock {
|
||||
class DoBlock extends Block, TDoBlock {
|
||||
private Ruby::DoBlock g;
|
||||
|
||||
DoBlock() { this = TDoBlock(g) }
|
||||
@@ -378,13 +382,9 @@ class DoBlock extends Block, BodyStmt, TDoBlock {
|
||||
toGenerated(result) = g.getParameters().getChild(n)
|
||||
}
|
||||
|
||||
final override string toString() { result = "do ... end" }
|
||||
final override BodyStmt getBody() { toGenerated(result) = g.getBody() }
|
||||
|
||||
final override AstNode getAChild(string pred) {
|
||||
result = Block.super.getAChild(pred)
|
||||
or
|
||||
result = BodyStmt.super.getAChild(pred)
|
||||
}
|
||||
final override string toString() { result = "do ... end" }
|
||||
|
||||
final override string getAPrimaryQlClass() { result = "DoBlock" }
|
||||
}
|
||||
|
||||
@@ -100,9 +100,16 @@ private module Cached {
|
||||
} or
|
||||
TBlockArgument(Ruby::BlockArgument g) or
|
||||
TBlockParameter(Ruby::BlockParameter g) or
|
||||
TBodyStatement(Ruby::BodyStatement g) {
|
||||
any(Ruby::Method m).getBody() = g or
|
||||
any(Ruby::SingletonMethod m).getBody() = g or
|
||||
any(Ruby::DoBlock b).getBody() = g
|
||||
} or
|
||||
TBodyStmtSynth(Ast::AstNode parent, int i) { mkSynthChild(BodyStmtKind(), parent, i) } or
|
||||
TBooleanLiteralSynth(Ast::AstNode parent, int i, boolean value) {
|
||||
mkSynthChild(BooleanLiteralKind(value), parent, i)
|
||||
} or
|
||||
TBraceBlockBody(Ruby::BlockBody g) or
|
||||
TBraceBlockSynth(Ast::AstNode parent, int i) { mkSynthChild(BraceBlockKind(), parent, i) } or
|
||||
TBraceBlockReal(Ruby::Block g) { not g.getParent() instanceof Ruby::Lambda } or
|
||||
TBreakStmt(Ruby::Break g) or
|
||||
@@ -362,23 +369,24 @@ private module Cached {
|
||||
TAssignMulExpr or TAssignRShiftExpr or TAssignSubExpr or TBareStringLiteral or
|
||||
TBareSymbolLiteral or TBeginBlock or TBeginExpr or TBitwiseAndExprReal or
|
||||
TBitwiseOrExprReal or TBitwiseXorExprReal or TBlockArgument or TBlockParameter or
|
||||
TBraceBlockReal or TBreakStmt or TCaseEqExpr or TCaseExpr or TCaseMatchReal or
|
||||
TCharacterLiteral or TClassDeclaration or TClassVariableAccessReal or TComplementExpr or
|
||||
TComplexLiteral or TDefinedExprReal or TDelimitedSymbolLiteral or
|
||||
TDestructuredLeftAssignment or TDestructuredParameter or TDivExprReal or TDo or TDoBlock or
|
||||
TElementReference or TElseReal or TElsif or TEmptyStmt or TEncoding or TEndBlock or
|
||||
TEnsure or TEqExpr or TExponentExprReal or TFalseLiteral or TFile or TFindPattern or
|
||||
TFloatLiteral or TForExpr or TForwardParameter or TForwardArgument or TGEExpr or TGTExpr or
|
||||
TGlobalVariableAccessReal or THashKeySymbolLiteral or THashLiteral or THashPattern or
|
||||
THashSplatExprReal or THashSplatNilParameter or THashSplatParameter or THereDoc or
|
||||
TIdentifierMethodCall or TIfReal or TIfModifierExpr or TInClauseReal or
|
||||
TInstanceVariableAccessReal or TIntegerLiteralReal or TKeywordParameter or TLEExpr or
|
||||
TLShiftExprReal or TLTExpr or TLambda or TLeftAssignmentList or TLine or
|
||||
TLocalVariableAccessReal or TLogicalAndExprReal or TLogicalOrExprReal or TMethod or
|
||||
TMatchPattern or TModuleDeclaration or TModuloExprReal or TMulExprReal or TNEExpr or
|
||||
TNextStmt or TNilLiteralReal or TNoRegExpMatchExpr or TNotExprReal or TOptionalParameter or
|
||||
TPairReal or TParenthesizedExpr or TParenthesizedPattern or TRShiftExprReal or
|
||||
TRangeLiteralReal or TRationalLiteral or TRedoStmt or TRegExpLiteral or TRegExpMatchExpr or
|
||||
TBodyStatement or TBraceBlockBody or TBraceBlockReal or TBreakStmt or TCaseEqExpr or
|
||||
TCaseExpr or TCaseMatchReal or TCharacterLiteral or TClassDeclaration or
|
||||
TClassVariableAccessReal or TComplementExpr or TComplexLiteral or TDefinedExprReal or
|
||||
TDelimitedSymbolLiteral or TDestructuredLeftAssignment or TDestructuredParameter or
|
||||
TDivExprReal or TDo or TDoBlock or TElementReference or TElseReal or TElsif or TEmptyStmt or
|
||||
TEncoding or TEndBlock or TEnsure or TEqExpr or TExponentExprReal or TFalseLiteral or
|
||||
TFile or TFindPattern or TFloatLiteral or TForExpr or TForwardParameter or
|
||||
TForwardArgument or TGEExpr or TGTExpr or TGlobalVariableAccessReal or
|
||||
THashKeySymbolLiteral or THashLiteral or THashPattern or THashSplatExprReal or
|
||||
THashSplatNilParameter or THashSplatParameter or THereDoc or TIdentifierMethodCall or
|
||||
TIfReal or TIfModifierExpr or TInClauseReal or TInstanceVariableAccessReal or
|
||||
TIntegerLiteralReal or TKeywordParameter or TLEExpr or TLShiftExprReal or TLTExpr or
|
||||
TLambda or TLeftAssignmentList or TLine or TLocalVariableAccessReal or
|
||||
TLogicalAndExprReal or TLogicalOrExprReal or TMethod or TMatchPattern or
|
||||
TModuleDeclaration or TModuloExprReal or TMulExprReal or TNEExpr or TNextStmt or
|
||||
TNilLiteralReal or TNoRegExpMatchExpr or TNotExprReal or TOptionalParameter or TPairReal or
|
||||
TParenthesizedExpr or TParenthesizedPattern or TRShiftExprReal or TRangeLiteralReal or
|
||||
TRationalLiteral or TRedoStmt or TRegExpLiteral or TRegExpMatchExpr or
|
||||
TRegularArrayLiteral or TRegularMethodCall or TRegularStringLiteral or TRegularSuperCall or
|
||||
TRescueClause or TRescueModifierExpr or TRetryStmt or TReturnStmt or
|
||||
TScopeResolutionConstantAccess or TSelfReal or TSimpleParameterReal or
|
||||
@@ -393,13 +401,13 @@ private module Cached {
|
||||
|
||||
class TAstNodeSynth =
|
||||
TAddExprSynth or TAssignExprSynth or TBitwiseAndExprSynth or TBitwiseOrExprSynth or
|
||||
TBitwiseXorExprSynth or TBraceBlockSynth or TBooleanLiteralSynth or TCaseMatchSynth or
|
||||
TClassVariableAccessSynth or TConstantReadAccessSynth or TConstantWriteAccessSynth or
|
||||
TDivExprSynth or TElseSynth or TExponentExprSynth or TGlobalVariableAccessSynth or
|
||||
TIfSynth or TInClauseSynth or TInstanceVariableAccessSynth or TIntegerLiteralSynth or
|
||||
TLShiftExprSynth or TLocalVariableAccessSynth or TLogicalAndExprSynth or
|
||||
TLogicalOrExprSynth or TMethodCallSynth or TModuloExprSynth or TMulExprSynth or
|
||||
TNilLiteralSynth or TRShiftExprSynth or TRangeLiteralSynth or TSelfSynth or
|
||||
TBitwiseXorExprSynth or TBraceBlockSynth or TBodyStmtSynth or TBooleanLiteralSynth or
|
||||
TCaseMatchSynth or TClassVariableAccessSynth or TConstantReadAccessSynth or
|
||||
TConstantWriteAccessSynth or TDivExprSynth or TElseSynth or TExponentExprSynth or
|
||||
TGlobalVariableAccessSynth or TIfSynth or TInClauseSynth or TInstanceVariableAccessSynth or
|
||||
TIntegerLiteralSynth or TLShiftExprSynth or TLocalVariableAccessSynth or
|
||||
TLogicalAndExprSynth or TLogicalOrExprSynth or TMethodCallSynth or TModuloExprSynth or
|
||||
TMulExprSynth or TNilLiteralSynth or TRShiftExprSynth or TRangeLiteralSynth or TSelfSynth or
|
||||
TSimpleParameterSynth or TSplatExprSynth or THashSplatExprSynth or TStmtSequenceSynth or
|
||||
TSubExprSynth or TPairSynth or TSimpleSymbolLiteralSynth;
|
||||
|
||||
@@ -439,6 +447,8 @@ private module Cached {
|
||||
n = TBitwiseXorExprReal(result) or
|
||||
n = TBlockArgument(result) or
|
||||
n = TBlockParameter(result) or
|
||||
n = TBodyStatement(result) or
|
||||
n = TBraceBlockBody(result) or
|
||||
n = TBraceBlockReal(result) or
|
||||
n = TBreakStmt(result) or
|
||||
n = TCaseEqExpr(result) or
|
||||
@@ -584,6 +594,8 @@ private module Cached {
|
||||
or
|
||||
result = TBitwiseXorExprSynth(parent, i)
|
||||
or
|
||||
result = TBodyStmtSynth(parent, i)
|
||||
or
|
||||
result = TBooleanLiteralSynth(parent, i, _)
|
||||
or
|
||||
result = TBraceBlockSynth(parent, i)
|
||||
@@ -757,9 +769,9 @@ class TElse = TElseReal or TElseSynth;
|
||||
|
||||
class TStmtSequence =
|
||||
TBeginBlock or TEndBlock or TThen or TElse or TDo or TEnsure or TStringInterpolationComponent or
|
||||
TBlock or TBodyStmt or TParenthesizedExpr or TStmtSequenceSynth;
|
||||
TBodyStmt or TParenthesizedExpr or TStmtSequenceSynth;
|
||||
|
||||
class TBodyStmt = TBeginExpr or TModuleBase or TMethod or TLambda or TDoBlock or TSingletonMethod;
|
||||
class TBodyStmt = TBeginExpr or TModuleBase or TBraceBlockBody or TBodyStatement or TBodyStmtSynth;
|
||||
|
||||
class TNilLiteral = TNilLiteralReal or TNilLiteralSynth;
|
||||
|
||||
|
||||
@@ -14,6 +14,18 @@ class StmtSequenceSynth extends StmtSequence, TStmtSequenceSynth {
|
||||
final override string toString() { result = "..." }
|
||||
}
|
||||
|
||||
class BodyStatement extends BodyStmt, TBodyStatement {
|
||||
final override string toString() { result = "..." }
|
||||
}
|
||||
|
||||
class BraceBlockBody extends BodyStmt, TBraceBlockBody {
|
||||
final override string toString() { result = "..." }
|
||||
}
|
||||
|
||||
class BodyStmtSynth extends BodyStmt, TBodyStmtSynth {
|
||||
final override string toString() { result = "..." }
|
||||
}
|
||||
|
||||
class Then extends StmtSequence, TThen {
|
||||
private Ruby::Then g;
|
||||
|
||||
@@ -64,26 +76,9 @@ class Ensure extends StmtSequence, TEnsure {
|
||||
|
||||
// Not defined by dispatch, as it should not be exposed
|
||||
Ruby::AstNode getBodyStmtChild(TBodyStmt b, int i) {
|
||||
exists(Ruby::Method g, Ruby::AstNode body | b = TMethod(g) and body = g.getBody() |
|
||||
result = body.(Ruby::BodyStatement).getChild(i)
|
||||
or
|
||||
i = 0 and result = body and not body instanceof Ruby::BodyStatement
|
||||
)
|
||||
result = any(Ruby::BlockBody g | b = TBraceBlockBody(g)).getChild(i)
|
||||
or
|
||||
exists(Ruby::SingletonMethod g, Ruby::AstNode body |
|
||||
b = TSingletonMethod(g) and body = g.getBody()
|
||||
|
|
||||
result = body.(Ruby::BodyStatement).getChild(i)
|
||||
or
|
||||
i = 0 and result = body and not body instanceof Ruby::BodyStatement
|
||||
)
|
||||
or
|
||||
exists(Ruby::Lambda g | b = TLambda(g) |
|
||||
result = g.getBody().(Ruby::DoBlock).getBody().getChild(i) or
|
||||
result = g.getBody().(Ruby::Block).getBody().getChild(i)
|
||||
)
|
||||
or
|
||||
result = any(Ruby::DoBlock g | b = TDoBlock(g)).getBody().getChild(i)
|
||||
result = any(Ruby::BodyStatement g | b = TBodyStatement(g)).getChild(i)
|
||||
or
|
||||
result = any(Ruby::Program g | b = TToplevel(g)).getChild(i) and
|
||||
not result instanceof Ruby::BeginBlock
|
||||
|
||||
@@ -18,7 +18,7 @@ class BraceBlockReal extends BraceBlock, TBraceBlockReal {
|
||||
toGenerated(result) = g.getParameters().getChild(n)
|
||||
}
|
||||
|
||||
final override Stmt getStmt(int i) { toGenerated(result) = g.getBody().getChild(i) }
|
||||
final override BodyStmt getBody() { toGenerated(result) = g.getBody() }
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -28,8 +28,5 @@ class BraceBlockReal extends BraceBlock, TBraceBlockReal {
|
||||
class BraceBlockSynth extends BraceBlock, TBraceBlockSynth {
|
||||
final override Parameter getParameter(int n) { synthChild(this, n, result) }
|
||||
|
||||
final override Stmt getStmt(int i) {
|
||||
i >= 0 and
|
||||
synthChild(this, i + this.getNumberOfParameters(), result)
|
||||
}
|
||||
final override BodyStmt getBody() { synthChild(this, _, result) }
|
||||
}
|
||||
|
||||
@@ -19,6 +19,7 @@ newtype TSynthKind =
|
||||
BitwiseAndExprKind() or
|
||||
BitwiseOrExprKind() or
|
||||
BitwiseXorExprKind() or
|
||||
BodyStmtKind() or
|
||||
BooleanLiteralKind(boolean value) { value = true or value = false } or
|
||||
BraceBlockKind() or
|
||||
CaseMatchKind() or
|
||||
@@ -73,6 +74,8 @@ class SynthKind extends TSynthKind {
|
||||
or
|
||||
this = BitwiseXorExprKind() and result = "BitwiseXorExprKind"
|
||||
or
|
||||
this = BodyStmtKind() and result = "BodyStmtKind"
|
||||
or
|
||||
this = BooleanLiteralKind(_) and result = "BooleanLiteralKind"
|
||||
or
|
||||
this = BraceBlockKind() and result = "BraceBlockKind"
|
||||
@@ -1475,17 +1478,24 @@ private module ForLoopDesugar {
|
||||
i = 0 and
|
||||
child = SynthChild(SimpleParameterKind())
|
||||
or
|
||||
exists(SimpleParameter param | param = TSimpleParameterSynth(block, 0) |
|
||||
// block body
|
||||
parent = block and
|
||||
i = 1 and
|
||||
child = SynthChild(BodyStmtKind())
|
||||
or
|
||||
exists(SimpleParameter param, BodyStmt body |
|
||||
param = TSimpleParameterSynth(block, 0) and body = TBodyStmtSynth(block, 1)
|
||||
|
|
||||
parent = param and
|
||||
i = 0 and
|
||||
child = SynthChild(LocalVariableAccessSynthKind(TLocalVariableSynth(param, 0)))
|
||||
or
|
||||
// assignment to pattern from for loop to synth parameter
|
||||
parent = block and
|
||||
i = 1 and
|
||||
parent = body and
|
||||
i = 0 and
|
||||
child = SynthChild(AssignExprKind())
|
||||
or
|
||||
parent = TAssignExprSynth(block, 1) and
|
||||
parent = TAssignExprSynth(body, 0) and
|
||||
(
|
||||
i = 0 and
|
||||
child = childRef(for.getPattern())
|
||||
@@ -1493,11 +1503,11 @@ private module ForLoopDesugar {
|
||||
i = 1 and
|
||||
child = SynthChild(LocalVariableAccessSynthKind(TLocalVariableSynth(param, 0)))
|
||||
)
|
||||
or
|
||||
// rest of block body
|
||||
parent = body and
|
||||
child = childRef(for.getBody().(Do).getStmt(i - 1))
|
||||
)
|
||||
or
|
||||
// rest of block body
|
||||
parent = block and
|
||||
child = childRef(for.getBody().(Do).getStmt(i - 2))
|
||||
)
|
||||
)
|
||||
)
|
||||
@@ -1951,3 +1961,31 @@ private module ImplicitSuperArgsSynthesis {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private module CallableBodySynthesis {
|
||||
private predicate bodySynthesis(AstNode parent, int i, Child child) {
|
||||
exists(TMethodBase m, Ruby::AstNode body |
|
||||
body = any(Ruby::Method g | m = TMethod(g)).getBody()
|
||||
or
|
||||
body = any(Ruby::SingletonMethod g | m = TSingletonMethod(g)).getBody()
|
||||
|
|
||||
parent = m and
|
||||
not body instanceof Ruby::BodyStatement and
|
||||
i = 0 and
|
||||
child = SynthChild(BodyStmtKind())
|
||||
or
|
||||
exists(Stmt bodyStmt |
|
||||
parent = TBodyStmtSynth(m, 0) and
|
||||
i = 0 and
|
||||
bodyStmt = fromGenerated(body) and
|
||||
child = childRef(bodyStmt)
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
private class CallableBodySynthesis extends Synthesis {
|
||||
final override predicate child(AstNode parent, int i, Child child) {
|
||||
bodySynthesis(parent, i, child)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -100,24 +100,26 @@ private class EndBlockScope extends CfgScopeImpl, EndBlock {
|
||||
}
|
||||
}
|
||||
|
||||
private class BodyStmtCallableScope extends CfgScopeImpl, AstInternal::TBodyStmt, Callable {
|
||||
final override predicate entry(AstNode first) { this.(Trees::BodyStmtTree).firstInner(first) }
|
||||
|
||||
final override predicate exit(AstNode last, Completion c) {
|
||||
this.(Trees::BodyStmtTree).lastInner(last, c)
|
||||
}
|
||||
}
|
||||
|
||||
private class BraceBlockScope extends CfgScopeImpl, BraceBlock {
|
||||
private class CallableScope extends CfgScopeImpl, Callable {
|
||||
final override predicate entry(AstNode first) {
|
||||
first(this.(Trees::BraceBlockTree).getBodyChild(0, _), first)
|
||||
first(this.(Trees::CallableTree).getBodyChild(0), first)
|
||||
}
|
||||
|
||||
final override predicate exit(AstNode last, Completion c) {
|
||||
last(this.(Trees::BraceBlockTree).getLastBodyChild(), last, c)
|
||||
this.getBody().(Trees::BodyStmtTree).last(last, c)
|
||||
or
|
||||
last(this.(Trees::BraceBlockTree).getBodyChild(_, _), last, c) and
|
||||
not c instanceof NormalCompletion
|
||||
exists(int i |
|
||||
not exists(this.getBody()) and
|
||||
last(this.(Trees::CallableTree).getBodyChild(i), last, c) and
|
||||
not exists(this.(Trees::CallableTree).getBodyChild(i + 1))
|
||||
)
|
||||
or
|
||||
exists(AstNode child |
|
||||
child = this.(Trees::CallableTree).getBodyChild(_) and
|
||||
not child = this.getBody() and
|
||||
last(child, last, c) and
|
||||
not c instanceof NormalCompletion
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -159,10 +161,6 @@ module Trees {
|
||||
}
|
||||
|
||||
private class BeginTree extends BodyStmtTree instanceof BeginExpr {
|
||||
final override predicate first(AstNode first) { this.firstInner(first) }
|
||||
|
||||
final override predicate last(AstNode last, Completion c) { this.lastInner(last, c) }
|
||||
|
||||
final override predicate propagatesAbnormal(AstNode child) { none() }
|
||||
}
|
||||
|
||||
@@ -196,28 +194,21 @@ module Trees {
|
||||
private class BlockParameterTree extends NonDefaultValueParameterTree instanceof BlockParameter {
|
||||
}
|
||||
|
||||
abstract class BodyStmtTree extends StmtSequenceTree instanceof BodyStmt {
|
||||
class BodyStmtTree extends StmtSequenceTree instanceof BodyStmt {
|
||||
/** Gets a rescue clause in this block. */
|
||||
final RescueClause getARescue() { result = super.getRescue(_) }
|
||||
|
||||
/** Gets the `ensure` clause in this block, if any. */
|
||||
final StmtSequence getEnsure() { result = super.getEnsure() }
|
||||
|
||||
override predicate first(AstNode first) { first = this }
|
||||
|
||||
predicate firstInner(AstNode first) {
|
||||
override predicate first(AstNode first) {
|
||||
first(this.getBodyChild(0, _), first)
|
||||
or
|
||||
not exists(this.getBodyChild(_, _)) and
|
||||
(
|
||||
first(super.getRescue(_), first)
|
||||
or
|
||||
not exists(super.getRescue(_)) and
|
||||
first(super.getEnsure(), first)
|
||||
)
|
||||
first(super.getEnsure(), first)
|
||||
}
|
||||
|
||||
predicate lastInner(AstNode last, Completion c) {
|
||||
override predicate last(AstNode last, Completion c) {
|
||||
exists(boolean ensurable | last = this.getAnEnsurePredecessor(c, ensurable) |
|
||||
not super.hasEnsure()
|
||||
or
|
||||
@@ -387,27 +378,28 @@ module Trees {
|
||||
|
||||
private class BooleanLiteralTree extends LeafTree instanceof BooleanLiteral { }
|
||||
|
||||
class BraceBlockTree extends StmtSequenceTree instanceof BraceBlock {
|
||||
final override predicate propagatesAbnormal(AstNode child) { none() }
|
||||
|
||||
final override AstNode getBodyChild(int i, boolean rescuable) {
|
||||
result = super.getParameter(i) and rescuable = false
|
||||
class BraceBlockTree extends CallableTree instanceof BraceBlock {
|
||||
final override AstNode getBodyChild(int i) {
|
||||
result = super.getParameter(i)
|
||||
or
|
||||
result = super.getLocalVariable(i - super.getNumberOfParameters()) and rescuable = false
|
||||
result = super.getLocalVariable(i - super.getNumberOfParameters())
|
||||
or
|
||||
result =
|
||||
StmtSequenceTree.super
|
||||
.getBodyChild(i - super.getNumberOfParameters() - count(super.getALocalVariable()),
|
||||
rescuable)
|
||||
result = super.getBody() and
|
||||
i = super.getNumberOfParameters() + count(super.getALocalVariable())
|
||||
}
|
||||
}
|
||||
|
||||
class CallableTree extends PostOrderTree instanceof Callable {
|
||||
final override predicate propagatesAbnormal(AstNode child) { none() }
|
||||
|
||||
override predicate first(AstNode first) { first = this }
|
||||
|
||||
abstract AstNode getBodyChild(int i);
|
||||
|
||||
override predicate succ(AstNode pred, AstNode succ, Completion c) {
|
||||
// Normal left-to-right evaluation in the body
|
||||
exists(int i |
|
||||
last(this.getBodyChild(i, _), pred, c) and
|
||||
first(this.getBodyChild(i + 1, _), succ) and
|
||||
last(this.getBodyChild(i), pred, c) and
|
||||
first(this.getBodyChild(i + 1), succ) and
|
||||
c instanceof NormalCompletion
|
||||
)
|
||||
}
|
||||
@@ -1016,20 +1008,16 @@ module Trees {
|
||||
final override predicate succ(AstNode pred, AstNode succ, Completion c) { none() }
|
||||
}
|
||||
|
||||
private class DoBlockTree extends BodyStmtTree instanceof DoBlock {
|
||||
private class DoBlockTree extends CallableTree instanceof DoBlock {
|
||||
/** Gets the `i`th child in the body of this block. */
|
||||
final override AstNode getBodyChild(int i, boolean rescuable) {
|
||||
result = super.getParameter(i) and rescuable = false
|
||||
final override AstNode getBodyChild(int i) {
|
||||
result = super.getParameter(i)
|
||||
or
|
||||
result = super.getLocalVariable(i - super.getNumberOfParameters()) and rescuable = false
|
||||
result = super.getLocalVariable(i - super.getNumberOfParameters())
|
||||
or
|
||||
result =
|
||||
BodyStmtTree.super
|
||||
.getBodyChild(i - super.getNumberOfParameters() - count(super.getALocalVariable()),
|
||||
rescuable)
|
||||
result = super.getBody() and
|
||||
i = super.getNumberOfParameters() + count(super.getALocalVariable())
|
||||
}
|
||||
|
||||
override predicate propagatesAbnormal(AstNode child) { none() }
|
||||
}
|
||||
|
||||
private class EmptyStatementTree extends LeafTree instanceof EmptyStmt { }
|
||||
@@ -1073,14 +1061,12 @@ module Trees {
|
||||
final override AstNode getAccessNode() { result = super.getDefiningAccess() }
|
||||
}
|
||||
|
||||
private class LambdaTree extends BodyStmtTree instanceof Lambda {
|
||||
final override predicate propagatesAbnormal(AstNode child) { none() }
|
||||
|
||||
private class LambdaTree extends CallableTree instanceof Lambda {
|
||||
/** Gets the `i`th child in the body of this block. */
|
||||
final override AstNode getBodyChild(int i, boolean rescuable) {
|
||||
result = super.getParameter(i) and rescuable = false
|
||||
final override AstNode getBodyChild(int i) {
|
||||
result = super.getParameter(i)
|
||||
or
|
||||
result = BodyStmtTree.super.getBodyChild(i - super.getNumberOfParameters(), rescuable)
|
||||
result = super.getBody() and i = super.getNumberOfParameters()
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1151,14 +1137,12 @@ module Trees {
|
||||
private class MethodNameTree extends LeafTree instanceof MethodName, AstInternal::TTokenMethodName
|
||||
{ }
|
||||
|
||||
private class MethodTree extends BodyStmtTree instanceof Method {
|
||||
final override predicate propagatesAbnormal(AstNode child) { none() }
|
||||
|
||||
private class MethodTree extends CallableTree instanceof Method {
|
||||
/** Gets the `i`th child in the body of this block. */
|
||||
final override AstNode getBodyChild(int i, boolean rescuable) {
|
||||
result = super.getParameter(i) and rescuable = false
|
||||
final override AstNode getBodyChild(int i) {
|
||||
result = super.getParameter(i)
|
||||
or
|
||||
result = BodyStmtTree.super.getBodyChild(i - super.getNumberOfParameters(), rescuable)
|
||||
result = super.getBody() and i = super.getNumberOfParameters()
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1183,12 +1167,12 @@ module Trees {
|
||||
BodyStmtTree.super.succ(pred, succ, c)
|
||||
or
|
||||
pred = this and
|
||||
this.firstInner(succ) and
|
||||
super.first(succ) and
|
||||
c instanceof SimpleCompletion
|
||||
}
|
||||
|
||||
final override predicate last(AstNode last, Completion c) {
|
||||
this.lastInner(last, c)
|
||||
super.last(last, c)
|
||||
or
|
||||
not exists(this.getAChild(_)) and
|
||||
last = this and
|
||||
@@ -1328,7 +1312,7 @@ module Trees {
|
||||
|
||||
private class SingletonClassTree extends BodyStmtTree instanceof SingletonClass {
|
||||
final override predicate first(AstNode first) {
|
||||
this.firstInner(first)
|
||||
super.first(first)
|
||||
or
|
||||
not exists(this.getAChild(_)) and
|
||||
first = this
|
||||
@@ -1338,7 +1322,12 @@ module Trees {
|
||||
BodyStmtTree.super.succ(pred, succ, c)
|
||||
or
|
||||
succ = this and
|
||||
this.lastInner(pred, c)
|
||||
super.last(pred, c)
|
||||
}
|
||||
|
||||
final override predicate last(AstNode last, Completion c) {
|
||||
last = this and
|
||||
c.isValidFor(this)
|
||||
}
|
||||
|
||||
/** Gets the `i`th child in the body of this block. */
|
||||
@@ -1351,20 +1340,18 @@ module Trees {
|
||||
}
|
||||
}
|
||||
|
||||
private class SingletonMethodTree extends BodyStmtTree instanceof SingletonMethod {
|
||||
final override predicate propagatesAbnormal(AstNode child) { none() }
|
||||
|
||||
private class SingletonMethodTree extends CallableTree instanceof SingletonMethod {
|
||||
/** Gets the `i`th child in the body of this block. */
|
||||
final override AstNode getBodyChild(int i, boolean rescuable) {
|
||||
result = super.getParameter(i) and rescuable = false
|
||||
final override AstNode getBodyChild(int i) {
|
||||
result = super.getParameter(i)
|
||||
or
|
||||
result = BodyStmtTree.super.getBodyChild(i - super.getNumberOfParameters(), rescuable)
|
||||
result = super.getBody() and i = super.getNumberOfParameters()
|
||||
}
|
||||
|
||||
override predicate first(AstNode first) { first(super.getObject(), first) }
|
||||
|
||||
override predicate succ(AstNode pred, AstNode succ, Completion c) {
|
||||
BodyStmtTree.super.succ(pred, succ, c)
|
||||
CallableTree.super.succ(pred, succ, c)
|
||||
or
|
||||
last(super.getObject(), pred, c) and
|
||||
succ = this and
|
||||
@@ -1443,10 +1430,6 @@ module Trees {
|
||||
or
|
||||
result = BodyStmtTree.super.getBodyChild(i - count(super.getABeginBlock()), rescuable)
|
||||
}
|
||||
|
||||
final override predicate first(AstNode first) { super.firstInner(first) }
|
||||
|
||||
final override predicate last(AstNode last, Completion c) { super.lastInner(last, c) }
|
||||
}
|
||||
|
||||
private class UndefStmtTree extends StandardPreOrderTree instanceof UndefStmt {
|
||||
|
||||
@@ -246,7 +246,7 @@ module EnsureSplitting {
|
||||
private predicate exit0(AstNode pred, Trees::BodyStmtTree block, int nestLevel, Completion c) {
|
||||
this.appliesToPredecessor(pred) and
|
||||
nestLevel = block.getNestLevel() and
|
||||
block.lastInner(pred, c)
|
||||
block.last(pred, c)
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -1662,7 +1662,7 @@ private module ReturnNodes {
|
||||
* last thing that is evaluated in the body of the callable.
|
||||
*/
|
||||
class ExprReturnNode extends SourceReturnNode, ExprNode {
|
||||
ExprReturnNode() { exists(Callable c | implicitReturn(c, this) = c.getAStmt()) }
|
||||
ExprReturnNode() { exists(Callable c | implicitReturn(c, this) = c.getBody().getAStmt()) }
|
||||
|
||||
override ReturnKind getKindSource() {
|
||||
exists(CfgScope scope | scope = this.(NodeImpl).getCfgScope() |
|
||||
|
||||
@@ -1392,7 +1392,7 @@ class StmtSequenceNode extends ExprNode {
|
||||
/**
|
||||
* A data flow node corresponding to a method, block, or lambda expression.
|
||||
*/
|
||||
class CallableNode extends StmtSequenceNode {
|
||||
class CallableNode extends ExprNode {
|
||||
private Callable callable;
|
||||
|
||||
CallableNode() { this.asExpr().getExpr() = callable }
|
||||
|
||||
@@ -83,11 +83,7 @@ module Rbi {
|
||||
/**
|
||||
* Gets the type aliased by this call.
|
||||
*/
|
||||
RbiType getAliasedType() {
|
||||
exists(ExprNodes::MethodCallCfgNode n | n.getExpr() = this |
|
||||
result = n.getBlock().(ExprNodes::StmtSequenceCfgNode).getLastStmt().getExpr()
|
||||
)
|
||||
}
|
||||
RbiType getAliasedType() { result = this.getBlock().getBody().getLastStmt() }
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -304,7 +300,7 @@ module Rbi {
|
||||
private MethodSignatureCall sigCall;
|
||||
|
||||
MethodSignatureDefiningCall() {
|
||||
exists(MethodCall c | c = sigCall.getBlock().getAChild() |
|
||||
exists(MethodCall c | c = sigCall.getBlock().getBody().getAChild() |
|
||||
// The typical pattern for the contents of a `sig` block is something
|
||||
// like `params(<param defs>).returns(<return type>)` - we want to
|
||||
// pick up both of these calls.
|
||||
|
||||
@@ -18,7 +18,7 @@ module Slim {
|
||||
|
||||
override DataFlow::Node getTemplate() {
|
||||
result.asExpr().getExpr() =
|
||||
this.getBlock().(DataFlow::BlockNode).asCallableAstNode().getAStmt()
|
||||
this.getBlock().(DataFlow::BlockNode).asCallableAstNode().getBody().getAStmt()
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -38,6 +38,7 @@ private class NokogiriXmlParserCall extends XmlParserCall::Range, DataFlow::Call
|
||||
.getExpr()
|
||||
.(MethodCall)
|
||||
.getBlock()
|
||||
.getBody()
|
||||
.getAStmt()
|
||||
.getAChild*()
|
||||
.(MethodCall)
|
||||
|
||||
@@ -98,7 +98,7 @@ module Routing {
|
||||
|
||||
Block getBlock() { result = block }
|
||||
|
||||
override Stmt getAStmt() { result = block.getAStmt() }
|
||||
override Stmt getAStmt() { result = block.getBody().getAStmt() }
|
||||
|
||||
override RouteBlock getParent() { none() }
|
||||
|
||||
@@ -128,7 +128,7 @@ module Routing {
|
||||
|
||||
override string getAPrimaryQlClass() { result = "ConstraintsRouteBlock" }
|
||||
|
||||
override Stmt getAStmt() { result = block.getAStmt() }
|
||||
override Stmt getAStmt() { result = block.getBody().getAStmt() }
|
||||
|
||||
override string getPathComponent() { result = "" }
|
||||
|
||||
@@ -156,7 +156,7 @@ module Routing {
|
||||
|
||||
override string getAPrimaryQlClass() { result = "ScopeRouteBlock" }
|
||||
|
||||
override Stmt getAStmt() { result = block.getAStmt() }
|
||||
override Stmt getAStmt() { result = block.getBody().getAStmt() }
|
||||
|
||||
override string toString() { result = methodCall.toString() }
|
||||
|
||||
@@ -216,7 +216,7 @@ module Routing {
|
||||
|
||||
override string getAPrimaryQlClass() { result = "ResourcesRouteBlock" }
|
||||
|
||||
override Stmt getAStmt() { result = block.getAStmt() }
|
||||
override Stmt getAStmt() { result = block.getBody().getAStmt() }
|
||||
|
||||
/**
|
||||
* Gets the `resources` call that gives rise to this route block.
|
||||
@@ -282,7 +282,7 @@ module Routing {
|
||||
|
||||
NamespaceRouteBlock() { this = TNamespaceRouteBlock(parent, methodCall, block) }
|
||||
|
||||
override Stmt getAStmt() { result = block.getAStmt() }
|
||||
override Stmt getAStmt() { result = block.getBody().getAStmt() }
|
||||
|
||||
override string getPathComponent() { result = this.getNamespace() }
|
||||
|
||||
|
||||
@@ -70,7 +70,7 @@ private predicate memoReturnedFromMethod(Method m, MemoStmt s) {
|
||||
or
|
||||
// If we don't have flow (e.g. due to the dataflow library not supporting instance variable flow yet),
|
||||
// fall back to a syntactic heuristic: does the last statement in the method mention the memoization variable?
|
||||
m.getLastStmt().getAChild*().(InstanceVariableReadAccess).getVariable() =
|
||||
m.getBody().getLastStmt().getAChild*().(InstanceVariableReadAccess).getVariable() =
|
||||
s.getVariableAccess().getVariable()
|
||||
}
|
||||
|
||||
|
||||
@@ -33,7 +33,7 @@ private class SourceCall extends RelevantGemCall {
|
||||
private class GitSourceCall extends RelevantGemCall {
|
||||
GitSourceCall() { this.getMethodName() = "git_source" }
|
||||
|
||||
override Expr getAUrlPart() { result = this.getBlock().getLastStmt() }
|
||||
override Expr getAUrlPart() { result = this.getBlock().getBody().getLastStmt() }
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -38,11 +38,12 @@ calls/calls.rb:
|
||||
# 223| getBlock: [BraceBlock] { ... }
|
||||
# 223| getParameter: [SimpleParameter] __synth__0__1
|
||||
# 223| getDefiningAccess: [LocalVariableAccess] __synth__0__1
|
||||
# 223| getStmt: [AssignExpr] ... = ...
|
||||
# 223| getAnOperand/getLeftOperand: [LocalVariableAccess] x
|
||||
# 223| getAnOperand/getRightOperand: [LocalVariableAccess] __synth__0__1
|
||||
# 224| getStmt: [MethodCall] call to baz
|
||||
# 224| getReceiver: [SelfVariableAccess] self
|
||||
# 223| getBody: [StmtSequence] ...
|
||||
# 223| getStmt: [AssignExpr] ... = ...
|
||||
# 223| getAnOperand/getLeftOperand: [LocalVariableAccess] x
|
||||
# 223| getAnOperand/getRightOperand: [LocalVariableAccess] __synth__0__1
|
||||
# 224| getStmt: [MethodCall] call to baz
|
||||
# 224| getReceiver: [SelfVariableAccess] self
|
||||
# 226| [ForExpr] for ... in ...
|
||||
# 226| getDesugared: [StmtSequence] ...
|
||||
# 226| getStmt: [IfExpr] if ...
|
||||
@@ -58,11 +59,12 @@ calls/calls.rb:
|
||||
# 226| getBlock: [BraceBlock] { ... }
|
||||
# 226| getParameter: [SimpleParameter] __synth__0__1
|
||||
# 226| getDefiningAccess: [LocalVariableAccess] __synth__0__1
|
||||
# 226| getStmt: [AssignExpr] ... = ...
|
||||
# 226| getAnOperand/getLeftOperand: [LocalVariableAccess] x
|
||||
# 226| getAnOperand/getRightOperand: [LocalVariableAccess] __synth__0__1
|
||||
# 227| getStmt: [MethodCall] call to baz
|
||||
# 227| getReceiver: [ConstantReadAccess] X
|
||||
# 226| getBody: [StmtSequence] ...
|
||||
# 226| getStmt: [AssignExpr] ... = ...
|
||||
# 226| getAnOperand/getLeftOperand: [LocalVariableAccess] x
|
||||
# 226| getAnOperand/getRightOperand: [LocalVariableAccess] __synth__0__1
|
||||
# 227| getStmt: [MethodCall] call to baz
|
||||
# 227| getReceiver: [ConstantReadAccess] X
|
||||
# 246| [HashLiteral] {...}
|
||||
# 246| getDesugared: [MethodCall] call to []
|
||||
# 246| getReceiver: [ConstantReadAccess] Hash
|
||||
@@ -302,33 +304,34 @@ calls/calls.rb:
|
||||
# 339| getBlock: [BraceBlock] { ... }
|
||||
# 339| getParameter: [SimpleParameter] __synth__0__1
|
||||
# 339| getDefiningAccess: [LocalVariableAccess] __synth__0__1
|
||||
# 339| getStmt: [AssignExpr] ... = ...
|
||||
# 339| getDesugared: [StmtSequence] ...
|
||||
# 339| getStmt: [AssignExpr] ... = ...
|
||||
# 339| getAnOperand/getLeftOperand: [LocalVariableAccess] __synth__3__1
|
||||
# 339| getAnOperand/getRightOperand: [SplatExpr] * ...
|
||||
# 339| getAnOperand/getOperand/getReceiver: [LocalVariableAccess] __synth__0__1
|
||||
# 339| getStmt: [AssignExpr] ... = ...
|
||||
# 339| getAnOperand/getLeftOperand: [LocalVariableAccess] x
|
||||
# 339| getAnOperand/getRightOperand: [MethodCall] call to []
|
||||
# 339| getReceiver: [LocalVariableAccess] __synth__3__1
|
||||
# 339| getArgument: [IntegerLiteral] 0
|
||||
# 339| getStmt: [AssignExpr] ... = ...
|
||||
# 339| getAnOperand/getLeftOperand: [LocalVariableAccess] y
|
||||
# 339| getAnOperand/getRightOperand: [MethodCall] call to []
|
||||
# 339| getReceiver: [LocalVariableAccess] __synth__3__1
|
||||
# 339| getArgument: [IntegerLiteral] 1
|
||||
# 339| getStmt: [AssignExpr] ... = ...
|
||||
# 339| getAnOperand/getLeftOperand: [LocalVariableAccess] z
|
||||
# 339| getAnOperand/getRightOperand: [MethodCall] call to []
|
||||
# 339| getReceiver: [LocalVariableAccess] __synth__3__1
|
||||
# 339| getArgument: [IntegerLiteral] 2
|
||||
# 339| getAnOperand/getLeftOperand: [DestructuredLhsExpr] (..., ...)
|
||||
# 340| getStmt: [MethodCall] call to foo
|
||||
# 340| getReceiver: [SelfVariableAccess] self
|
||||
# 340| getArgument: [LocalVariableAccess] x
|
||||
# 340| getArgument: [LocalVariableAccess] y
|
||||
# 340| getArgument: [LocalVariableAccess] z
|
||||
# 339| getBody: [StmtSequence] ...
|
||||
# 339| getStmt: [AssignExpr] ... = ...
|
||||
# 339| getDesugared: [StmtSequence] ...
|
||||
# 339| getStmt: [AssignExpr] ... = ...
|
||||
# 339| getAnOperand/getLeftOperand: [LocalVariableAccess] __synth__3__1
|
||||
# 339| getAnOperand/getRightOperand: [SplatExpr] * ...
|
||||
# 339| getAnOperand/getOperand/getReceiver: [LocalVariableAccess] __synth__0__1
|
||||
# 339| getStmt: [AssignExpr] ... = ...
|
||||
# 339| getAnOperand/getLeftOperand: [LocalVariableAccess] x
|
||||
# 339| getAnOperand/getRightOperand: [MethodCall] call to []
|
||||
# 339| getReceiver: [LocalVariableAccess] __synth__3__1
|
||||
# 339| getArgument: [IntegerLiteral] 0
|
||||
# 339| getStmt: [AssignExpr] ... = ...
|
||||
# 339| getAnOperand/getLeftOperand: [LocalVariableAccess] y
|
||||
# 339| getAnOperand/getRightOperand: [MethodCall] call to []
|
||||
# 339| getReceiver: [LocalVariableAccess] __synth__3__1
|
||||
# 339| getArgument: [IntegerLiteral] 1
|
||||
# 339| getStmt: [AssignExpr] ... = ...
|
||||
# 339| getAnOperand/getLeftOperand: [LocalVariableAccess] z
|
||||
# 339| getAnOperand/getRightOperand: [MethodCall] call to []
|
||||
# 339| getReceiver: [LocalVariableAccess] __synth__3__1
|
||||
# 339| getArgument: [IntegerLiteral] 2
|
||||
# 339| getAnOperand/getLeftOperand: [DestructuredLhsExpr] (..., ...)
|
||||
# 340| getStmt: [MethodCall] call to foo
|
||||
# 340| getReceiver: [SelfVariableAccess] self
|
||||
# 340| getArgument: [LocalVariableAccess] x
|
||||
# 340| getArgument: [LocalVariableAccess] y
|
||||
# 340| getArgument: [LocalVariableAccess] z
|
||||
# 361| [MethodCall] call to empty?
|
||||
# 361| getDesugared: [StmtSequence] ...
|
||||
# 361| getStmt: [AssignExpr] ... = ...
|
||||
@@ -360,7 +363,8 @@ calls/calls.rb:
|
||||
# 363| getBlock: [BraceBlock] { ... }
|
||||
# 363| getParameter: [SimpleParameter] x
|
||||
# 363| getDefiningAccess: [LocalVariableAccess] x
|
||||
# 363| getStmt: [LocalVariableAccess] x
|
||||
# 363| getBody: [StmtSequence] ...
|
||||
# 363| getStmt: [LocalVariableAccess] x
|
||||
control/cases.rb:
|
||||
# 90| [ArrayLiteral] %w(...)
|
||||
# 90| getDesugared: [MethodCall] call to []
|
||||
@@ -647,18 +651,19 @@ control/loops.rb:
|
||||
# 9| getBlock: [BraceBlock] { ... }
|
||||
# 9| getParameter: [SimpleParameter] __synth__0__1
|
||||
# 9| getDefiningAccess: [LocalVariableAccess] __synth__0__1
|
||||
# 9| getStmt: [AssignExpr] ... = ...
|
||||
# 9| getAnOperand/getLeftOperand: [LocalVariableAccess] n
|
||||
# 9| getAnOperand/getRightOperand: [LocalVariableAccess] __synth__0__1
|
||||
# 10| getStmt: [AssignAddExpr] ... += ...
|
||||
# 10| getDesugared: [AssignExpr] ... = ...
|
||||
# 10| getAnOperand/getLeftOperand: [LocalVariableAccess] sum
|
||||
# 10| getAnOperand/getRightOperand: [AddExpr] ... + ...
|
||||
# 10| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] sum
|
||||
# 10| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] n
|
||||
# 11| getStmt: [AssignExpr] ... = ...
|
||||
# 11| getAnOperand/getLeftOperand: [LocalVariableAccess] foo
|
||||
# 11| getAnOperand/getRightOperand: [LocalVariableAccess] n
|
||||
# 9| getBody: [StmtSequence] ...
|
||||
# 9| getStmt: [AssignExpr] ... = ...
|
||||
# 9| getAnOperand/getLeftOperand: [LocalVariableAccess] n
|
||||
# 9| getAnOperand/getRightOperand: [LocalVariableAccess] __synth__0__1
|
||||
# 10| getStmt: [AssignAddExpr] ... += ...
|
||||
# 10| getDesugared: [AssignExpr] ... = ...
|
||||
# 10| getAnOperand/getLeftOperand: [LocalVariableAccess] sum
|
||||
# 10| getAnOperand/getRightOperand: [AddExpr] ... + ...
|
||||
# 10| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] sum
|
||||
# 10| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] n
|
||||
# 11| getStmt: [AssignExpr] ... = ...
|
||||
# 11| getAnOperand/getLeftOperand: [LocalVariableAccess] foo
|
||||
# 11| getAnOperand/getRightOperand: [LocalVariableAccess] n
|
||||
# 16| [ForExpr] for ... in ...
|
||||
# 16| getDesugared: [StmtSequence] ...
|
||||
# 16| getStmt: [IfExpr] if ...
|
||||
@@ -675,21 +680,22 @@ control/loops.rb:
|
||||
# 16| getBlock: [BraceBlock] { ... }
|
||||
# 16| getParameter: [SimpleParameter] __synth__0__1
|
||||
# 16| getDefiningAccess: [LocalVariableAccess] __synth__0__1
|
||||
# 16| getStmt: [AssignExpr] ... = ...
|
||||
# 16| getAnOperand/getLeftOperand: [LocalVariableAccess] n
|
||||
# 16| getAnOperand/getRightOperand: [LocalVariableAccess] __synth__0__1
|
||||
# 17| getStmt: [AssignAddExpr] ... += ...
|
||||
# 17| getDesugared: [AssignExpr] ... = ...
|
||||
# 17| getAnOperand/getLeftOperand: [LocalVariableAccess] sum
|
||||
# 17| getAnOperand/getRightOperand: [AddExpr] ... + ...
|
||||
# 17| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] sum
|
||||
# 17| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] n
|
||||
# 18| getStmt: [AssignSubExpr] ... -= ...
|
||||
# 18| getDesugared: [AssignExpr] ... = ...
|
||||
# 18| getAnOperand/getLeftOperand: [LocalVariableAccess] foo
|
||||
# 18| getAnOperand/getRightOperand: [SubExpr] ... - ...
|
||||
# 18| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] foo
|
||||
# 18| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] n
|
||||
# 16| getBody: [StmtSequence] ...
|
||||
# 16| getStmt: [AssignExpr] ... = ...
|
||||
# 16| getAnOperand/getLeftOperand: [LocalVariableAccess] n
|
||||
# 16| getAnOperand/getRightOperand: [LocalVariableAccess] __synth__0__1
|
||||
# 17| getStmt: [AssignAddExpr] ... += ...
|
||||
# 17| getDesugared: [AssignExpr] ... = ...
|
||||
# 17| getAnOperand/getLeftOperand: [LocalVariableAccess] sum
|
||||
# 17| getAnOperand/getRightOperand: [AddExpr] ... + ...
|
||||
# 17| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] sum
|
||||
# 17| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] n
|
||||
# 18| getStmt: [AssignSubExpr] ... -= ...
|
||||
# 18| getDesugared: [AssignExpr] ... = ...
|
||||
# 18| getAnOperand/getLeftOperand: [LocalVariableAccess] foo
|
||||
# 18| getAnOperand/getRightOperand: [SubExpr] ... - ...
|
||||
# 18| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] foo
|
||||
# 18| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] n
|
||||
# 22| [ForExpr] for ... in ...
|
||||
# 22| getDesugared: [StmtSequence] ...
|
||||
# 22| getStmt: [IfExpr] if ...
|
||||
@@ -721,35 +727,36 @@ control/loops.rb:
|
||||
# 22| getBlock: [BraceBlock] { ... }
|
||||
# 22| getParameter: [SimpleParameter] __synth__0__1
|
||||
# 22| getDefiningAccess: [LocalVariableAccess] __synth__0__1
|
||||
# 22| getStmt: [AssignExpr] ... = ...
|
||||
# 22| getDesugared: [StmtSequence] ...
|
||||
# 22| getStmt: [AssignExpr] ... = ...
|
||||
# 22| getAnOperand/getLeftOperand: [LocalVariableAccess] __synth__2__1
|
||||
# 22| getAnOperand/getRightOperand: [SplatExpr] * ...
|
||||
# 22| getAnOperand/getOperand/getReceiver: [LocalVariableAccess] __synth__0__1
|
||||
# 22| getStmt: [AssignExpr] ... = ...
|
||||
# 22| getAnOperand/getLeftOperand: [LocalVariableAccess] key
|
||||
# 22| getAnOperand/getRightOperand: [MethodCall] call to []
|
||||
# 22| getReceiver: [LocalVariableAccess] __synth__2__1
|
||||
# 22| getArgument: [IntegerLiteral] 0
|
||||
# 22| getStmt: [AssignExpr] ... = ...
|
||||
# 22| getAnOperand/getLeftOperand: [LocalVariableAccess] value
|
||||
# 22| getAnOperand/getRightOperand: [MethodCall] call to []
|
||||
# 22| getReceiver: [LocalVariableAccess] __synth__2__1
|
||||
# 22| getArgument: [IntegerLiteral] 1
|
||||
# 22| getAnOperand/getLeftOperand: [DestructuredLhsExpr] (..., ...)
|
||||
# 23| getStmt: [AssignAddExpr] ... += ...
|
||||
# 23| getDesugared: [AssignExpr] ... = ...
|
||||
# 23| getAnOperand/getLeftOperand: [LocalVariableAccess] sum
|
||||
# 23| getAnOperand/getRightOperand: [AddExpr] ... + ...
|
||||
# 23| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] sum
|
||||
# 23| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] value
|
||||
# 24| getStmt: [AssignMulExpr] ... *= ...
|
||||
# 24| getDesugared: [AssignExpr] ... = ...
|
||||
# 24| getAnOperand/getLeftOperand: [LocalVariableAccess] foo
|
||||
# 24| getAnOperand/getRightOperand: [MulExpr] ... * ...
|
||||
# 24| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] foo
|
||||
# 24| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] value
|
||||
# 22| getBody: [StmtSequence] ...
|
||||
# 22| getStmt: [AssignExpr] ... = ...
|
||||
# 22| getDesugared: [StmtSequence] ...
|
||||
# 22| getStmt: [AssignExpr] ... = ...
|
||||
# 22| getAnOperand/getLeftOperand: [LocalVariableAccess] __synth__2__1
|
||||
# 22| getAnOperand/getRightOperand: [SplatExpr] * ...
|
||||
# 22| getAnOperand/getOperand/getReceiver: [LocalVariableAccess] __synth__0__1
|
||||
# 22| getStmt: [AssignExpr] ... = ...
|
||||
# 22| getAnOperand/getLeftOperand: [LocalVariableAccess] key
|
||||
# 22| getAnOperand/getRightOperand: [MethodCall] call to []
|
||||
# 22| getReceiver: [LocalVariableAccess] __synth__2__1
|
||||
# 22| getArgument: [IntegerLiteral] 0
|
||||
# 22| getStmt: [AssignExpr] ... = ...
|
||||
# 22| getAnOperand/getLeftOperand: [LocalVariableAccess] value
|
||||
# 22| getAnOperand/getRightOperand: [MethodCall] call to []
|
||||
# 22| getReceiver: [LocalVariableAccess] __synth__2__1
|
||||
# 22| getArgument: [IntegerLiteral] 1
|
||||
# 22| getAnOperand/getLeftOperand: [DestructuredLhsExpr] (..., ...)
|
||||
# 23| getStmt: [AssignAddExpr] ... += ...
|
||||
# 23| getDesugared: [AssignExpr] ... = ...
|
||||
# 23| getAnOperand/getLeftOperand: [LocalVariableAccess] sum
|
||||
# 23| getAnOperand/getRightOperand: [AddExpr] ... + ...
|
||||
# 23| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] sum
|
||||
# 23| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] value
|
||||
# 24| getStmt: [AssignMulExpr] ... *= ...
|
||||
# 24| getDesugared: [AssignExpr] ... = ...
|
||||
# 24| getAnOperand/getLeftOperand: [LocalVariableAccess] foo
|
||||
# 24| getAnOperand/getRightOperand: [MulExpr] ... * ...
|
||||
# 24| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] foo
|
||||
# 24| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] value
|
||||
# 28| [ForExpr] for ... in ...
|
||||
# 28| getDesugared: [StmtSequence] ...
|
||||
# 28| getStmt: [IfExpr] if ...
|
||||
@@ -781,36 +788,37 @@ control/loops.rb:
|
||||
# 28| getBlock: [BraceBlock] { ... }
|
||||
# 28| getParameter: [SimpleParameter] __synth__0__1
|
||||
# 28| getDefiningAccess: [LocalVariableAccess] __synth__0__1
|
||||
# 28| getStmt: [AssignExpr] ... = ...
|
||||
# 28| getDesugared: [StmtSequence] ...
|
||||
# 28| getStmt: [AssignExpr] ... = ...
|
||||
# 28| getAnOperand/getLeftOperand: [LocalVariableAccess] __synth__2__1
|
||||
# 28| getAnOperand/getRightOperand: [SplatExpr] * ...
|
||||
# 28| getAnOperand/getOperand/getReceiver: [LocalVariableAccess] __synth__0__1
|
||||
# 28| getStmt: [AssignExpr] ... = ...
|
||||
# 28| getAnOperand/getLeftOperand: [LocalVariableAccess] key
|
||||
# 28| getAnOperand/getRightOperand: [MethodCall] call to []
|
||||
# 28| getReceiver: [LocalVariableAccess] __synth__2__1
|
||||
# 28| getArgument: [IntegerLiteral] 0
|
||||
# 28| getStmt: [AssignExpr] ... = ...
|
||||
# 28| getAnOperand/getLeftOperand: [LocalVariableAccess] value
|
||||
# 28| getAnOperand/getRightOperand: [MethodCall] call to []
|
||||
# 28| getReceiver: [LocalVariableAccess] __synth__2__1
|
||||
# 28| getArgument: [IntegerLiteral] 1
|
||||
# 28| getAnOperand/getLeftOperand: [DestructuredLhsExpr] (..., ...)
|
||||
# 29| getStmt: [AssignAddExpr] ... += ...
|
||||
# 29| getDesugared: [AssignExpr] ... = ...
|
||||
# 29| getAnOperand/getLeftOperand: [LocalVariableAccess] sum
|
||||
# 29| getAnOperand/getRightOperand: [AddExpr] ... + ...
|
||||
# 29| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] sum
|
||||
# 29| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] value
|
||||
# 30| getStmt: [AssignDivExpr] ... /= ...
|
||||
# 30| getDesugared: [AssignExpr] ... = ...
|
||||
# 30| getAnOperand/getLeftOperand: [LocalVariableAccess] foo
|
||||
# 30| getAnOperand/getRightOperand: [DivExpr] ... / ...
|
||||
# 30| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] foo
|
||||
# 30| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] value
|
||||
# 31| getStmt: [BreakStmt] break
|
||||
# 28| getBody: [StmtSequence] ...
|
||||
# 28| getStmt: [AssignExpr] ... = ...
|
||||
# 28| getDesugared: [StmtSequence] ...
|
||||
# 28| getStmt: [AssignExpr] ... = ...
|
||||
# 28| getAnOperand/getLeftOperand: [LocalVariableAccess] __synth__2__1
|
||||
# 28| getAnOperand/getRightOperand: [SplatExpr] * ...
|
||||
# 28| getAnOperand/getOperand/getReceiver: [LocalVariableAccess] __synth__0__1
|
||||
# 28| getStmt: [AssignExpr] ... = ...
|
||||
# 28| getAnOperand/getLeftOperand: [LocalVariableAccess] key
|
||||
# 28| getAnOperand/getRightOperand: [MethodCall] call to []
|
||||
# 28| getReceiver: [LocalVariableAccess] __synth__2__1
|
||||
# 28| getArgument: [IntegerLiteral] 0
|
||||
# 28| getStmt: [AssignExpr] ... = ...
|
||||
# 28| getAnOperand/getLeftOperand: [LocalVariableAccess] value
|
||||
# 28| getAnOperand/getRightOperand: [MethodCall] call to []
|
||||
# 28| getReceiver: [LocalVariableAccess] __synth__2__1
|
||||
# 28| getArgument: [IntegerLiteral] 1
|
||||
# 28| getAnOperand/getLeftOperand: [DestructuredLhsExpr] (..., ...)
|
||||
# 29| getStmt: [AssignAddExpr] ... += ...
|
||||
# 29| getDesugared: [AssignExpr] ... = ...
|
||||
# 29| getAnOperand/getLeftOperand: [LocalVariableAccess] sum
|
||||
# 29| getAnOperand/getRightOperand: [AddExpr] ... + ...
|
||||
# 29| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] sum
|
||||
# 29| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] value
|
||||
# 30| getStmt: [AssignDivExpr] ... /= ...
|
||||
# 30| getDesugared: [AssignExpr] ... = ...
|
||||
# 30| getAnOperand/getLeftOperand: [LocalVariableAccess] foo
|
||||
# 30| getAnOperand/getRightOperand: [DivExpr] ... / ...
|
||||
# 30| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] foo
|
||||
# 30| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] value
|
||||
# 31| getStmt: [BreakStmt] break
|
||||
# 36| [AssignAddExpr] ... += ...
|
||||
# 36| getDesugared: [AssignExpr] ... = ...
|
||||
# 36| getAnOperand/getLeftOperand: [LocalVariableAccess] x
|
||||
@@ -1090,16 +1098,17 @@ erb/template.html.erb:
|
||||
# 27| getBlock: [BraceBlock] { ... }
|
||||
# 27| getParameter: [SimpleParameter] __synth__0__1
|
||||
# 27| getDefiningAccess: [LocalVariableAccess] __synth__0__1
|
||||
# 27| getStmt: [AssignExpr] ... = ...
|
||||
# 27| getAnOperand/getLeftOperand: [LocalVariableAccess] x
|
||||
# 27| getAnOperand/getRightOperand: [LocalVariableAccess] __synth__0__1
|
||||
# 28| getStmt: [AssignAddExpr] ... += ...
|
||||
# 28| getDesugared: [AssignExpr] ... = ...
|
||||
# 28| getAnOperand/getLeftOperand: [LocalVariableAccess] xs
|
||||
# 28| getAnOperand/getRightOperand: [AddExpr] ... + ...
|
||||
# 28| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] xs
|
||||
# 28| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] x
|
||||
# 29| getStmt: [LocalVariableAccess] xs
|
||||
# 27| getBody: [StmtSequence] ...
|
||||
# 27| getStmt: [AssignExpr] ... = ...
|
||||
# 27| getAnOperand/getLeftOperand: [LocalVariableAccess] x
|
||||
# 27| getAnOperand/getRightOperand: [LocalVariableAccess] __synth__0__1
|
||||
# 28| getStmt: [AssignAddExpr] ... += ...
|
||||
# 28| getDesugared: [AssignExpr] ... = ...
|
||||
# 28| getAnOperand/getLeftOperand: [LocalVariableAccess] xs
|
||||
# 28| getAnOperand/getRightOperand: [AddExpr] ... + ...
|
||||
# 28| getAnOperand/getLeftOperand/getReceiver: [LocalVariableAccess] xs
|
||||
# 28| getAnOperand/getArgument/getRightOperand: [LocalVariableAccess] x
|
||||
# 29| getStmt: [LocalVariableAccess] xs
|
||||
gems/test.gemspec:
|
||||
# 2| [AssignExpr] ... = ...
|
||||
# 2| getDesugared: [StmtSequence] ...
|
||||
|
||||
@@ -709,32 +709,40 @@ lookupMethod
|
||||
| unresolved_subclass.rb:21:1:22:3 | UnresolvedNamespace::X1::X2::X3::A | puts | calls.rb:102:5:102:30 | puts |
|
||||
| unresolved_subclass.rb:21:1:22:3 | UnresolvedNamespace::X1::X2::X3::A | to_s | calls.rb:172:5:173:7 | to_s |
|
||||
enclosingMethod
|
||||
| calls.rb:2:5:2:14 | ... | calls.rb:1:1:3:3 | foo |
|
||||
| calls.rb:2:5:2:14 | call to puts | calls.rb:1:1:3:3 | foo |
|
||||
| calls.rb:2:5:2:14 | self | calls.rb:1:1:3:3 | foo |
|
||||
| calls.rb:2:10:2:14 | "foo" | calls.rb:1:1:3:3 | foo |
|
||||
| calls.rb:2:11:2:13 | foo | calls.rb:1:1:3:3 | foo |
|
||||
| calls.rb:8:5:8:15 | ... | calls.rb:7:1:9:3 | bar |
|
||||
| calls.rb:8:5:8:15 | call to puts | calls.rb:7:1:9:3 | bar |
|
||||
| calls.rb:8:5:8:15 | self | calls.rb:7:1:9:3 | bar |
|
||||
| calls.rb:8:10:8:15 | "bar1" | calls.rb:7:1:9:3 | bar |
|
||||
| calls.rb:8:11:8:14 | bar1 | calls.rb:7:1:9:3 | bar |
|
||||
| calls.rb:14:5:14:15 | ... | calls.rb:13:1:15:3 | bar |
|
||||
| calls.rb:14:5:14:15 | call to puts | calls.rb:13:1:15:3 | bar |
|
||||
| calls.rb:14:5:14:15 | self | calls.rb:13:1:15:3 | bar |
|
||||
| calls.rb:14:10:14:15 | "bar2" | calls.rb:13:1:15:3 | bar |
|
||||
| calls.rb:14:11:14:14 | bar2 | calls.rb:13:1:15:3 | bar |
|
||||
| calls.rb:23:9:23:19 | call to singleton_m | calls.rb:22:5:24:7 | instance_m |
|
||||
| calls.rb:23:9:23:19 | self | calls.rb:22:5:24:7 | instance_m |
|
||||
| calls.rb:23:9:23:35 | ... | calls.rb:22:5:24:7 | instance_m |
|
||||
| calls.rb:26:9:26:18 | call to instance_m | calls.rb:25:5:27:7 | singleton_m |
|
||||
| calls.rb:26:9:26:18 | self | calls.rb:25:5:27:7 | singleton_m |
|
||||
| calls.rb:26:9:26:34 | ... | calls.rb:25:5:27:7 | singleton_m |
|
||||
| calls.rb:40:5:40:14 | call to instance_m | calls.rb:39:1:41:3 | call_instance_m |
|
||||
| calls.rb:40:5:40:14 | self | calls.rb:39:1:41:3 | call_instance_m |
|
||||
| calls.rb:40:5:40:30 | ... | calls.rb:39:1:41:3 | call_instance_m |
|
||||
| calls.rb:52:9:52:18 | call to instance_m | calls.rb:51:5:57:7 | baz |
|
||||
| calls.rb:52:9:52:18 | self | calls.rb:51:5:57:7 | baz |
|
||||
| calls.rb:52:9:56:40 | ... | calls.rb:51:5:57:7 | baz |
|
||||
| calls.rb:53:9:53:12 | self | calls.rb:51:5:57:7 | baz |
|
||||
| calls.rb:53:9:53:23 | call to instance_m | calls.rb:51:5:57:7 | baz |
|
||||
| calls.rb:55:9:55:19 | call to singleton_m | calls.rb:51:5:57:7 | baz |
|
||||
| calls.rb:55:9:55:19 | self | calls.rb:51:5:57:7 | baz |
|
||||
| calls.rb:56:9:56:12 | self | calls.rb:51:5:57:7 | baz |
|
||||
| calls.rb:56:9:56:24 | call to singleton_m | calls.rb:51:5:57:7 | baz |
|
||||
| calls.rb:67:9:67:13 | ... | calls.rb:66:5:68:7 | baz |
|
||||
| calls.rb:67:9:67:13 | super call to baz | calls.rb:66:5:68:7 | baz |
|
||||
| calls.rb:76:18:76:18 | a | calls.rb:76:1:79:3 | optional_arg |
|
||||
| calls.rb:76:18:76:18 | a | calls.rb:76:1:79:3 | optional_arg |
|
||||
@@ -744,12 +752,15 @@ enclosingMethod
|
||||
| calls.rb:76:28:76:28 | 5 | calls.rb:76:1:79:3 | optional_arg |
|
||||
| calls.rb:77:5:77:5 | a | calls.rb:76:1:79:3 | optional_arg |
|
||||
| calls.rb:77:5:77:16 | call to bit_length | calls.rb:76:1:79:3 | optional_arg |
|
||||
| calls.rb:77:5:78:16 | ... | calls.rb:76:1:79:3 | optional_arg |
|
||||
| calls.rb:78:5:78:5 | b | calls.rb:76:1:79:3 | optional_arg |
|
||||
| calls.rb:78:5:78:16 | call to bit_length | calls.rb:76:1:79:3 | optional_arg |
|
||||
| calls.rb:82:5:82:11 | ... | calls.rb:81:1:83:3 | call_block |
|
||||
| calls.rb:82:5:82:11 | yield ... | calls.rb:81:1:83:3 | call_block |
|
||||
| calls.rb:82:11:82:11 | 1 | calls.rb:81:1:83:3 | call_block |
|
||||
| calls.rb:86:5:86:7 | var | calls.rb:85:1:89:3 | foo |
|
||||
| calls.rb:86:5:86:18 | ... = ... | calls.rb:85:1:89:3 | foo |
|
||||
| calls.rb:86:5:88:29 | ... | calls.rb:85:1:89:3 | foo |
|
||||
| calls.rb:86:11:86:14 | Hash | calls.rb:85:1:89:3 | foo |
|
||||
| calls.rb:86:11:86:18 | call to new | calls.rb:85:1:89:3 | foo |
|
||||
| calls.rb:87:5:87:7 | var | calls.rb:85:1:89:3 | foo |
|
||||
@@ -761,25 +772,30 @@ enclosingMethod
|
||||
| calls.rb:88:19:88:19 | x | calls.rb:85:1:89:3 | foo |
|
||||
| calls.rb:88:19:88:19 | x | calls.rb:85:1:89:3 | foo |
|
||||
| calls.rb:88:22:88:24 | var | calls.rb:85:1:89:3 | foo |
|
||||
| calls.rb:88:22:88:27 | ... | calls.rb:85:1:89:3 | foo |
|
||||
| calls.rb:88:22:88:27 | ...[...] | calls.rb:85:1:89:3 | foo |
|
||||
| calls.rb:88:26:88:26 | x | calls.rb:85:1:89:3 | foo |
|
||||
| calls.rb:102:14:102:14 | x | calls.rb:102:5:102:30 | puts |
|
||||
| calls.rb:102:14:102:14 | x | calls.rb:102:5:102:30 | puts |
|
||||
| calls.rb:102:17:102:26 | ... | calls.rb:102:5:102:30 | puts |
|
||||
| calls.rb:102:17:102:26 | call to old_puts | calls.rb:102:5:102:30 | puts |
|
||||
| calls.rb:102:17:102:26 | self | calls.rb:102:5:102:30 | puts |
|
||||
| calls.rb:102:26:102:26 | x | calls.rb:102:5:102:30 | puts |
|
||||
| calls.rb:108:17:108:17 | x | calls.rb:108:5:110:7 | include |
|
||||
| calls.rb:108:17:108:17 | x | calls.rb:108:5:110:7 | include |
|
||||
| calls.rb:109:9:109:21 | ... | calls.rb:108:5:110:7 | include |
|
||||
| calls.rb:109:9:109:21 | call to old_include | calls.rb:108:5:110:7 | include |
|
||||
| calls.rb:109:9:109:21 | self | calls.rb:108:5:110:7 | include |
|
||||
| calls.rb:109:21:109:21 | x | calls.rb:108:5:110:7 | include |
|
||||
| calls.rb:122:12:122:12 | x | calls.rb:122:5:122:31 | [] |
|
||||
| calls.rb:122:12:122:12 | x | calls.rb:122:5:122:31 | [] |
|
||||
| calls.rb:122:15:122:27 | ... | calls.rb:122:5:122:31 | [] |
|
||||
| calls.rb:122:15:122:27 | call to old_lookup | calls.rb:122:5:122:31 | [] |
|
||||
| calls.rb:122:15:122:27 | self | calls.rb:122:5:122:31 | [] |
|
||||
| calls.rb:122:26:122:26 | x | calls.rb:122:5:122:31 | [] |
|
||||
| calls.rb:127:10:127:10 | x | calls.rb:127:3:127:29 | [] |
|
||||
| calls.rb:127:10:127:10 | x | calls.rb:127:3:127:29 | [] |
|
||||
| calls.rb:127:13:127:25 | ... | calls.rb:127:3:127:29 | [] |
|
||||
| calls.rb:127:13:127:25 | call to old_lookup | calls.rb:127:3:127:29 | [] |
|
||||
| calls.rb:127:13:127:25 | self | calls.rb:127:3:127:29 | [] |
|
||||
| calls.rb:127:24:127:24 | x | calls.rb:127:3:127:29 | [] |
|
||||
@@ -787,6 +803,7 @@ enclosingMethod
|
||||
| calls.rb:131:16:131:19 | body | calls.rb:131:3:137:5 | foreach |
|
||||
| calls.rb:132:5:132:5 | x | calls.rb:131:3:137:5 | foreach |
|
||||
| calls.rb:132:5:132:9 | ... = ... | calls.rb:131:3:137:5 | foreach |
|
||||
| calls.rb:132:5:136:7 | ... | calls.rb:131:3:137:5 | foreach |
|
||||
| calls.rb:132:9:132:9 | 0 | calls.rb:131:3:137:5 | foreach |
|
||||
| calls.rb:133:5:136:7 | while ... | calls.rb:131:3:137:5 | foreach |
|
||||
| calls.rb:133:11:133:11 | x | calls.rb:131:3:137:5 | foreach |
|
||||
@@ -805,65 +822,80 @@ enclosingMethod
|
||||
| calls.rb:135:9:135:14 | ... = ... | calls.rb:131:3:137:5 | foreach |
|
||||
| calls.rb:135:11:135:12 | ... + ... | calls.rb:131:3:137:5 | foreach |
|
||||
| calls.rb:135:14:135:14 | 1 | calls.rb:131:3:137:5 | foreach |
|
||||
| calls.rb:141:5:141:20 | ... | calls.rb:140:1:142:3 | funny |
|
||||
| calls.rb:141:5:141:20 | yield ... | calls.rb:140:1:142:3 | funny |
|
||||
| calls.rb:141:11:141:20 | "prefix: " | calls.rb:140:1:142:3 | funny |
|
||||
| calls.rb:141:12:141:19 | prefix: | calls.rb:140:1:142:3 | funny |
|
||||
| calls.rb:158:14:158:15 | &b | calls.rb:158:1:160:3 | indirect |
|
||||
| calls.rb:158:15:158:15 | b | calls.rb:158:1:160:3 | indirect |
|
||||
| calls.rb:159:5:159:17 | ... | calls.rb:158:1:160:3 | indirect |
|
||||
| calls.rb:159:5:159:17 | call to call_block | calls.rb:158:1:160:3 | indirect |
|
||||
| calls.rb:159:5:159:17 | self | calls.rb:158:1:160:3 | indirect |
|
||||
| calls.rb:159:16:159:17 | &... | calls.rb:158:1:160:3 | indirect |
|
||||
| calls.rb:159:17:159:17 | b | calls.rb:158:1:160:3 | indirect |
|
||||
| calls.rb:167:9:167:12 | self | calls.rb:166:5:168:7 | s_method |
|
||||
| calls.rb:167:9:167:17 | ... | calls.rb:166:5:168:7 | s_method |
|
||||
| calls.rb:167:9:167:17 | call to to_s | calls.rb:166:5:168:7 | s_method |
|
||||
| calls.rb:192:9:192:26 | call to puts | calls.rb:191:5:194:7 | singleton_a |
|
||||
| calls.rb:192:9:192:26 | self | calls.rb:191:5:194:7 | singleton_a |
|
||||
| calls.rb:192:9:193:24 | ... | calls.rb:191:5:194:7 | singleton_a |
|
||||
| calls.rb:192:14:192:26 | "singleton_a" | calls.rb:191:5:194:7 | singleton_a |
|
||||
| calls.rb:192:15:192:25 | singleton_a | calls.rb:191:5:194:7 | singleton_a |
|
||||
| calls.rb:193:9:193:12 | self | calls.rb:191:5:194:7 | singleton_a |
|
||||
| calls.rb:193:9:193:24 | call to singleton_b | calls.rb:191:5:194:7 | singleton_a |
|
||||
| calls.rb:197:9:197:26 | call to puts | calls.rb:196:5:199:7 | singleton_b |
|
||||
| calls.rb:197:9:197:26 | self | calls.rb:196:5:199:7 | singleton_b |
|
||||
| calls.rb:197:9:198:24 | ... | calls.rb:196:5:199:7 | singleton_b |
|
||||
| calls.rb:197:14:197:26 | "singleton_b" | calls.rb:196:5:199:7 | singleton_b |
|
||||
| calls.rb:197:15:197:25 | singleton_b | calls.rb:196:5:199:7 | singleton_b |
|
||||
| calls.rb:198:9:198:12 | self | calls.rb:196:5:199:7 | singleton_b |
|
||||
| calls.rb:198:9:198:24 | call to singleton_c | calls.rb:196:5:199:7 | singleton_b |
|
||||
| calls.rb:202:9:202:26 | ... | calls.rb:201:5:203:7 | singleton_c |
|
||||
| calls.rb:202:9:202:26 | call to puts | calls.rb:201:5:203:7 | singleton_c |
|
||||
| calls.rb:202:9:202:26 | self | calls.rb:201:5:203:7 | singleton_c |
|
||||
| calls.rb:202:14:202:26 | "singleton_c" | calls.rb:201:5:203:7 | singleton_c |
|
||||
| calls.rb:202:15:202:25 | singleton_c | calls.rb:201:5:203:7 | singleton_c |
|
||||
| calls.rb:206:9:206:26 | call to puts | calls.rb:205:5:208:7 | singleton_d |
|
||||
| calls.rb:206:9:206:26 | self | calls.rb:205:5:208:7 | singleton_d |
|
||||
| calls.rb:206:9:207:24 | ... | calls.rb:205:5:208:7 | singleton_d |
|
||||
| calls.rb:206:14:206:26 | "singleton_d" | calls.rb:205:5:208:7 | singleton_d |
|
||||
| calls.rb:206:15:206:25 | singleton_d | calls.rb:205:5:208:7 | singleton_d |
|
||||
| calls.rb:207:9:207:12 | self | calls.rb:205:5:208:7 | singleton_d |
|
||||
| calls.rb:207:9:207:24 | call to singleton_a | calls.rb:205:5:208:7 | singleton_d |
|
||||
| calls.rb:211:9:213:11 | singleton_e | calls.rb:210:5:215:7 | instance |
|
||||
| calls.rb:211:9:214:19 | ... | calls.rb:210:5:215:7 | instance |
|
||||
| calls.rb:211:13:211:16 | self | calls.rb:210:5:215:7 | instance |
|
||||
| calls.rb:212:13:212:30 | ... | calls.rb:211:9:213:11 | singleton_e |
|
||||
| calls.rb:212:13:212:30 | call to puts | calls.rb:211:9:213:11 | singleton_e |
|
||||
| calls.rb:212:13:212:30 | self | calls.rb:211:9:213:11 | singleton_e |
|
||||
| calls.rb:212:18:212:30 | "singleton_e" | calls.rb:211:9:213:11 | singleton_e |
|
||||
| calls.rb:212:19:212:29 | singleton_e | calls.rb:211:9:213:11 | singleton_e |
|
||||
| calls.rb:214:9:214:19 | call to singleton_e | calls.rb:210:5:215:7 | instance |
|
||||
| calls.rb:214:9:214:19 | self | calls.rb:210:5:215:7 | instance |
|
||||
| calls.rb:219:13:219:30 | ... | calls.rb:218:9:220:11 | singleton_f |
|
||||
| calls.rb:219:13:219:30 | call to puts | calls.rb:218:9:220:11 | singleton_f |
|
||||
| calls.rb:219:13:219:30 | self | calls.rb:218:9:220:11 | singleton_f |
|
||||
| calls.rb:219:18:219:30 | "singleton_f" | calls.rb:218:9:220:11 | singleton_f |
|
||||
| calls.rb:219:19:219:29 | singleton_f | calls.rb:218:9:220:11 | singleton_f |
|
||||
| calls.rb:224:9:224:12 | self | calls.rb:223:5:225:7 | call_singleton_g |
|
||||
| calls.rb:224:9:224:24 | ... | calls.rb:223:5:225:7 | call_singleton_g |
|
||||
| calls.rb:224:9:224:24 | call to singleton_g | calls.rb:223:5:225:7 | call_singleton_g |
|
||||
| calls.rb:237:5:237:24 | ... | calls.rb:236:1:238:3 | singleton_g |
|
||||
| calls.rb:237:5:237:24 | call to puts | calls.rb:236:1:238:3 | singleton_g |
|
||||
| calls.rb:237:5:237:24 | self | calls.rb:236:1:238:3 | singleton_g |
|
||||
| calls.rb:237:10:237:24 | "singleton_g_1" | calls.rb:236:1:238:3 | singleton_g |
|
||||
| calls.rb:237:11:237:23 | singleton_g_1 | calls.rb:236:1:238:3 | singleton_g |
|
||||
| calls.rb:244:5:244:24 | ... | calls.rb:243:1:245:3 | singleton_g |
|
||||
| calls.rb:244:5:244:24 | call to puts | calls.rb:243:1:245:3 | singleton_g |
|
||||
| calls.rb:244:5:244:24 | self | calls.rb:243:1:245:3 | singleton_g |
|
||||
| calls.rb:244:10:244:24 | "singleton_g_2" | calls.rb:243:1:245:3 | singleton_g |
|
||||
| calls.rb:244:11:244:23 | singleton_g_2 | calls.rb:243:1:245:3 | singleton_g |
|
||||
| calls.rb:252:9:252:28 | ... | calls.rb:251:5:253:7 | singleton_g |
|
||||
| calls.rb:252:9:252:28 | call to puts | calls.rb:251:5:253:7 | singleton_g |
|
||||
| calls.rb:252:9:252:28 | self | calls.rb:251:5:253:7 | singleton_g |
|
||||
| calls.rb:252:14:252:28 | "singleton_g_3" | calls.rb:251:5:253:7 | singleton_g |
|
||||
| calls.rb:252:15:252:27 | singleton_g_3 | calls.rb:251:5:253:7 | singleton_g |
|
||||
| calls.rb:268:5:268:22 | ... | calls.rb:267:1:269:3 | singleton_g |
|
||||
| calls.rb:268:5:268:22 | call to puts | calls.rb:267:1:269:3 | singleton_g |
|
||||
| calls.rb:268:5:268:22 | self | calls.rb:267:1:269:3 | singleton_g |
|
||||
| calls.rb:268:10:268:22 | "singleton_g" | calls.rb:267:1:269:3 | singleton_g |
|
||||
@@ -873,24 +905,29 @@ enclosingMethod
|
||||
| calls.rb:279:5:279:8 | type | calls.rb:278:1:286:3 | create |
|
||||
| calls.rb:279:5:279:12 | call to new | calls.rb:278:1:286:3 | create |
|
||||
| calls.rb:279:5:279:21 | call to instance | calls.rb:278:1:286:3 | create |
|
||||
| calls.rb:279:5:285:20 | ... | calls.rb:278:1:286:3 | create |
|
||||
| calls.rb:281:5:283:7 | singleton_h | calls.rb:278:1:286:3 | create |
|
||||
| calls.rb:281:9:281:12 | type | calls.rb:278:1:286:3 | create |
|
||||
| calls.rb:282:9:282:26 | ... | calls.rb:281:5:283:7 | singleton_h |
|
||||
| calls.rb:282:9:282:26 | call to puts | calls.rb:281:5:283:7 | singleton_h |
|
||||
| calls.rb:282:9:282:26 | self | calls.rb:281:5:283:7 | singleton_h |
|
||||
| calls.rb:282:14:282:26 | "singleton_h" | calls.rb:281:5:283:7 | singleton_h |
|
||||
| calls.rb:282:15:282:25 | singleton_h | calls.rb:281:5:283:7 | singleton_h |
|
||||
| calls.rb:285:5:285:8 | type | calls.rb:278:1:286:3 | create |
|
||||
| calls.rb:285:5:285:20 | call to singleton_h | calls.rb:278:1:286:3 | create |
|
||||
| calls.rb:295:9:295:26 | ... | calls.rb:294:5:296:7 | singleton_i |
|
||||
| calls.rb:295:9:295:26 | call to puts | calls.rb:294:5:296:7 | singleton_i |
|
||||
| calls.rb:295:9:295:26 | self | calls.rb:294:5:296:7 | singleton_i |
|
||||
| calls.rb:295:14:295:26 | "singleton_i" | calls.rb:294:5:296:7 | singleton_i |
|
||||
| calls.rb:295:15:295:25 | singleton_i | calls.rb:294:5:296:7 | singleton_i |
|
||||
| calls.rb:304:9:304:26 | ... | calls.rb:303:5:305:7 | singleton_j |
|
||||
| calls.rb:304:9:304:26 | call to puts | calls.rb:303:5:305:7 | singleton_j |
|
||||
| calls.rb:304:9:304:26 | self | calls.rb:303:5:305:7 | singleton_j |
|
||||
| calls.rb:304:14:304:26 | "singleton_j" | calls.rb:303:5:305:7 | singleton_j |
|
||||
| calls.rb:304:15:304:25 | singleton_j | calls.rb:303:5:305:7 | singleton_j |
|
||||
| calls.rb:312:9:312:31 | call to puts | calls.rb:311:5:314:7 | instance |
|
||||
| calls.rb:312:9:312:31 | self | calls.rb:311:5:314:7 | instance |
|
||||
| calls.rb:312:9:313:36 | ... | calls.rb:311:5:314:7 | instance |
|
||||
| calls.rb:312:14:312:31 | "SelfNew#instance" | calls.rb:311:5:314:7 | instance |
|
||||
| calls.rb:312:15:312:30 | SelfNew#instance | calls.rb:311:5:314:7 | instance |
|
||||
| calls.rb:313:9:313:11 | call to new | calls.rb:311:5:314:7 | instance |
|
||||
@@ -898,16 +935,21 @@ enclosingMethod
|
||||
| calls.rb:313:9:313:20 | call to instance | calls.rb:311:5:314:7 | instance |
|
||||
| calls.rb:317:9:317:11 | call to new | calls.rb:316:5:318:7 | singleton |
|
||||
| calls.rb:317:9:317:11 | self | calls.rb:316:5:318:7 | singleton |
|
||||
| calls.rb:317:9:317:20 | ... | calls.rb:316:5:318:7 | singleton |
|
||||
| calls.rb:317:9:317:20 | call to instance | calls.rb:316:5:318:7 | singleton |
|
||||
| calls.rb:327:9:327:26 | ... | calls.rb:326:5:328:7 | instance |
|
||||
| calls.rb:327:9:327:26 | call to puts | calls.rb:326:5:328:7 | instance |
|
||||
| calls.rb:327:9:327:26 | self | calls.rb:326:5:328:7 | instance |
|
||||
| calls.rb:327:14:327:26 | "C1#instance" | calls.rb:326:5:328:7 | instance |
|
||||
| calls.rb:327:15:327:25 | C1#instance | calls.rb:326:5:328:7 | instance |
|
||||
| calls.rb:331:9:331:12 | ... | calls.rb:330:5:332:7 | return_self |
|
||||
| calls.rb:331:9:331:12 | self | calls.rb:330:5:332:7 | return_self |
|
||||
| calls.rb:337:9:337:26 | ... | calls.rb:336:5:338:7 | instance |
|
||||
| calls.rb:337:9:337:26 | call to puts | calls.rb:336:5:338:7 | instance |
|
||||
| calls.rb:337:9:337:26 | self | calls.rb:336:5:338:7 | instance |
|
||||
| calls.rb:337:14:337:26 | "C2#instance" | calls.rb:336:5:338:7 | instance |
|
||||
| calls.rb:337:15:337:25 | C2#instance | calls.rb:336:5:338:7 | instance |
|
||||
| calls.rb:343:9:343:26 | ... | calls.rb:342:5:344:7 | instance |
|
||||
| calls.rb:343:9:343:26 | call to puts | calls.rb:342:5:344:7 | instance |
|
||||
| calls.rb:343:9:343:26 | self | calls.rb:342:5:344:7 | instance |
|
||||
| calls.rb:343:14:343:26 | "C3#instance" | calls.rb:342:5:344:7 | instance |
|
||||
@@ -915,6 +957,7 @@ enclosingMethod
|
||||
| calls.rb:347:22:347:22 | x | calls.rb:347:1:363:3 | pattern_dispatch |
|
||||
| calls.rb:347:22:347:22 | x | calls.rb:347:1:363:3 | pattern_dispatch |
|
||||
| calls.rb:348:5:356:7 | case ... | calls.rb:347:1:363:3 | pattern_dispatch |
|
||||
| calls.rb:348:5:362:7 | ... | calls.rb:347:1:363:3 | pattern_dispatch |
|
||||
| calls.rb:348:10:348:10 | x | calls.rb:347:1:363:3 | pattern_dispatch |
|
||||
| calls.rb:349:5:350:18 | when ... | calls.rb:347:1:363:3 | pattern_dispatch |
|
||||
| calls.rb:349:10:349:11 | C3 | calls.rb:347:1:363:3 | pattern_dispatch |
|
||||
@@ -955,89 +998,111 @@ enclosingMethod
|
||||
| calls.rb:361:26:361:36 | call to instance | calls.rb:347:1:363:3 | pattern_dispatch |
|
||||
| calls.rb:374:19:374:19 | x | calls.rb:374:1:378:3 | add_singleton |
|
||||
| calls.rb:374:19:374:19 | x | calls.rb:374:1:378:3 | add_singleton |
|
||||
| calls.rb:375:5:377:7 | ... | calls.rb:374:1:378:3 | add_singleton |
|
||||
| calls.rb:375:5:377:7 | instance | calls.rb:374:1:378:3 | add_singleton |
|
||||
| calls.rb:375:9:375:9 | x | calls.rb:374:1:378:3 | add_singleton |
|
||||
| calls.rb:376:9:376:28 | ... | calls.rb:375:5:377:7 | instance |
|
||||
| calls.rb:376:9:376:28 | call to puts | calls.rb:375:5:377:7 | instance |
|
||||
| calls.rb:376:9:376:28 | self | calls.rb:375:5:377:7 | instance |
|
||||
| calls.rb:376:14:376:28 | "instance_on x" | calls.rb:375:5:377:7 | instance |
|
||||
| calls.rb:376:15:376:27 | instance_on x | calls.rb:375:5:377:7 | instance |
|
||||
| calls.rb:388:13:388:48 | ... | calls.rb:387:9:389:11 | singleton1 |
|
||||
| calls.rb:388:13:388:48 | call to puts | calls.rb:387:9:389:11 | singleton1 |
|
||||
| calls.rb:388:13:388:48 | self | calls.rb:387:9:389:11 | singleton1 |
|
||||
| calls.rb:388:18:388:48 | "SingletonOverride1#singleton1" | calls.rb:387:9:389:11 | singleton1 |
|
||||
| calls.rb:388:19:388:47 | SingletonOverride1#singleton1 | calls.rb:387:9:389:11 | singleton1 |
|
||||
| calls.rb:392:13:392:22 | ... | calls.rb:391:9:393:11 | call_singleton1 |
|
||||
| calls.rb:392:13:392:22 | call to singleton1 | calls.rb:391:9:393:11 | call_singleton1 |
|
||||
| calls.rb:392:13:392:22 | self | calls.rb:391:9:393:11 | call_singleton1 |
|
||||
| calls.rb:396:13:396:16 | self | calls.rb:395:9:397:11 | factory |
|
||||
| calls.rb:396:13:396:20 | call to new | calls.rb:395:9:397:11 | factory |
|
||||
| calls.rb:396:13:396:30 | ... | calls.rb:395:9:397:11 | factory |
|
||||
| calls.rb:396:13:396:30 | call to instance1 | calls.rb:395:9:397:11 | factory |
|
||||
| calls.rb:401:9:401:44 | ... | calls.rb:400:5:402:7 | singleton2 |
|
||||
| calls.rb:401:9:401:44 | call to puts | calls.rb:400:5:402:7 | singleton2 |
|
||||
| calls.rb:401:9:401:44 | self | calls.rb:400:5:402:7 | singleton2 |
|
||||
| calls.rb:401:14:401:44 | "SingletonOverride1#singleton2" | calls.rb:400:5:402:7 | singleton2 |
|
||||
| calls.rb:401:15:401:43 | SingletonOverride1#singleton2 | calls.rb:400:5:402:7 | singleton2 |
|
||||
| calls.rb:405:9:405:18 | ... | calls.rb:404:5:406:7 | call_singleton2 |
|
||||
| calls.rb:405:9:405:18 | call to singleton2 | calls.rb:404:5:406:7 | call_singleton2 |
|
||||
| calls.rb:405:9:405:18 | self | calls.rb:404:5:406:7 | call_singleton2 |
|
||||
| calls.rb:411:9:411:43 | ... | calls.rb:410:5:412:7 | instance1 |
|
||||
| calls.rb:411:9:411:43 | call to puts | calls.rb:410:5:412:7 | instance1 |
|
||||
| calls.rb:411:9:411:43 | self | calls.rb:410:5:412:7 | instance1 |
|
||||
| calls.rb:411:14:411:43 | "SingletonOverride1#instance1" | calls.rb:410:5:412:7 | instance1 |
|
||||
| calls.rb:411:15:411:42 | SingletonOverride1#instance1 | calls.rb:410:5:412:7 | instance1 |
|
||||
| calls.rb:423:13:423:48 | ... | calls.rb:422:9:424:11 | singleton1 |
|
||||
| calls.rb:423:13:423:48 | call to puts | calls.rb:422:9:424:11 | singleton1 |
|
||||
| calls.rb:423:13:423:48 | self | calls.rb:422:9:424:11 | singleton1 |
|
||||
| calls.rb:423:18:423:48 | "SingletonOverride2#singleton1" | calls.rb:422:9:424:11 | singleton1 |
|
||||
| calls.rb:423:19:423:47 | SingletonOverride2#singleton1 | calls.rb:422:9:424:11 | singleton1 |
|
||||
| calls.rb:428:9:428:44 | ... | calls.rb:427:5:429:7 | singleton2 |
|
||||
| calls.rb:428:9:428:44 | call to puts | calls.rb:427:5:429:7 | singleton2 |
|
||||
| calls.rb:428:9:428:44 | self | calls.rb:427:5:429:7 | singleton2 |
|
||||
| calls.rb:428:14:428:44 | "SingletonOverride2#singleton2" | calls.rb:427:5:429:7 | singleton2 |
|
||||
| calls.rb:428:15:428:43 | SingletonOverride2#singleton2 | calls.rb:427:5:429:7 | singleton2 |
|
||||
| calls.rb:432:9:432:43 | ... | calls.rb:431:5:433:7 | instance1 |
|
||||
| calls.rb:432:9:432:43 | call to puts | calls.rb:431:5:433:7 | instance1 |
|
||||
| calls.rb:432:9:432:43 | self | calls.rb:431:5:433:7 | instance1 |
|
||||
| calls.rb:432:14:432:43 | "SingletonOverride2#instance1" | calls.rb:431:5:433:7 | instance1 |
|
||||
| calls.rb:432:15:432:42 | SingletonOverride2#instance1 | calls.rb:431:5:433:7 | instance1 |
|
||||
| calls.rb:444:13:444:48 | ... | calls.rb:443:9:445:11 | m1 |
|
||||
| calls.rb:444:13:444:48 | call to puts | calls.rb:443:9:445:11 | m1 |
|
||||
| calls.rb:444:13:444:48 | self | calls.rb:443:9:445:11 | m1 |
|
||||
| calls.rb:444:18:444:48 | "ConditionalInstanceMethods#m1" | calls.rb:443:9:445:11 | m1 |
|
||||
| calls.rb:444:19:444:47 | ConditionalInstanceMethods#m1 | calls.rb:443:9:445:11 | m1 |
|
||||
| calls.rb:449:9:449:44 | call to puts | calls.rb:448:5:460:7 | m2 |
|
||||
| calls.rb:449:9:449:44 | self | calls.rb:448:5:460:7 | m2 |
|
||||
| calls.rb:449:9:459:10 | ... | calls.rb:448:5:460:7 | m2 |
|
||||
| calls.rb:449:14:449:44 | "ConditionalInstanceMethods#m2" | calls.rb:448:5:460:7 | m2 |
|
||||
| calls.rb:449:15:449:43 | ConditionalInstanceMethods#m2 | calls.rb:448:5:460:7 | m2 |
|
||||
| calls.rb:451:9:457:11 | m3 | calls.rb:448:5:460:7 | m2 |
|
||||
| calls.rb:452:13:452:48 | call to puts | calls.rb:451:9:457:11 | m3 |
|
||||
| calls.rb:452:13:452:48 | self | calls.rb:451:9:457:11 | m3 |
|
||||
| calls.rb:452:13:456:15 | ... | calls.rb:451:9:457:11 | m3 |
|
||||
| calls.rb:452:18:452:48 | "ConditionalInstanceMethods#m3" | calls.rb:451:9:457:11 | m3 |
|
||||
| calls.rb:452:19:452:47 | ConditionalInstanceMethods#m3 | calls.rb:451:9:457:11 | m3 |
|
||||
| calls.rb:454:13:456:15 | m4 | calls.rb:451:9:457:11 | m3 |
|
||||
| calls.rb:455:17:455:52 | ... | calls.rb:454:13:456:15 | m4 |
|
||||
| calls.rb:455:17:455:52 | call to puts | calls.rb:454:13:456:15 | m4 |
|
||||
| calls.rb:455:17:455:52 | self | calls.rb:454:13:456:15 | m4 |
|
||||
| calls.rb:455:22:455:52 | "ConditionalInstanceMethods#m4" | calls.rb:454:13:456:15 | m4 |
|
||||
| calls.rb:455:23:455:51 | ConditionalInstanceMethods#m4 | calls.rb:454:13:456:15 | m4 |
|
||||
| calls.rb:459:9:459:10 | call to m3 | calls.rb:448:5:460:7 | m2 |
|
||||
| calls.rb:459:9:459:10 | self | calls.rb:448:5:460:7 | m2 |
|
||||
| calls.rb:465:17:465:40 | ... | calls.rb:464:13:466:15 | m5 |
|
||||
| calls.rb:465:17:465:40 | call to puts | calls.rb:464:13:466:15 | m5 |
|
||||
| calls.rb:465:17:465:40 | self | calls.rb:464:13:466:15 | m5 |
|
||||
| calls.rb:465:22:465:40 | "AnonymousClass#m5" | calls.rb:464:13:466:15 | m5 |
|
||||
| calls.rb:465:23:465:39 | AnonymousClass#m5 | calls.rb:464:13:466:15 | m5 |
|
||||
| calls.rb:481:13:481:22 | ... | calls.rb:480:9:482:11 | foo |
|
||||
| calls.rb:481:13:481:22 | call to puts | calls.rb:480:9:482:11 | foo |
|
||||
| calls.rb:481:13:481:22 | self | calls.rb:480:9:482:11 | foo |
|
||||
| calls.rb:481:18:481:22 | "foo" | calls.rb:480:9:482:11 | foo |
|
||||
| calls.rb:481:19:481:21 | foo | calls.rb:480:9:482:11 | foo |
|
||||
| calls.rb:487:13:487:22 | ... | calls.rb:486:9:488:11 | bar |
|
||||
| calls.rb:487:13:487:22 | call to puts | calls.rb:486:9:488:11 | bar |
|
||||
| calls.rb:487:13:487:22 | self | calls.rb:486:9:488:11 | bar |
|
||||
| calls.rb:487:18:487:22 | "bar" | calls.rb:486:9:488:11 | bar |
|
||||
| calls.rb:487:19:487:21 | bar | calls.rb:486:9:488:11 | bar |
|
||||
| calls.rb:506:9:506:46 | ... | calls.rb:505:5:507:7 | singleton |
|
||||
| calls.rb:506:9:506:46 | call to puts | calls.rb:505:5:507:7 | singleton |
|
||||
| calls.rb:506:9:506:46 | self | calls.rb:505:5:507:7 | singleton |
|
||||
| calls.rb:506:14:506:46 | "ExtendSingletonMethod#singleton" | calls.rb:505:5:507:7 | singleton |
|
||||
| calls.rb:506:15:506:45 | ExtendSingletonMethod#singleton | calls.rb:505:5:507:7 | singleton |
|
||||
| calls.rb:535:9:535:42 | ... | calls.rb:534:15:536:7 | foo |
|
||||
| calls.rb:535:9:535:42 | call to puts | calls.rb:534:15:536:7 | foo |
|
||||
| calls.rb:535:9:535:42 | self | calls.rb:534:15:536:7 | foo |
|
||||
| calls.rb:535:14:535:42 | "ProtectedMethodInModule#foo" | calls.rb:534:15:536:7 | foo |
|
||||
| calls.rb:535:15:535:41 | ProtectedMethodInModule#foo | calls.rb:534:15:536:7 | foo |
|
||||
| calls.rb:543:9:543:35 | ... | calls.rb:542:15:544:7 | bar |
|
||||
| calls.rb:543:9:543:35 | call to puts | calls.rb:542:15:544:7 | bar |
|
||||
| calls.rb:543:9:543:35 | self | calls.rb:542:15:544:7 | bar |
|
||||
| calls.rb:543:14:543:35 | "ProtectedMethods#bar" | calls.rb:542:15:544:7 | bar |
|
||||
| calls.rb:543:15:543:34 | ProtectedMethods#bar | calls.rb:542:15:544:7 | bar |
|
||||
| calls.rb:547:9:547:11 | call to foo | calls.rb:546:5:551:7 | baz |
|
||||
| calls.rb:547:9:547:11 | self | calls.rb:546:5:551:7 | baz |
|
||||
| calls.rb:547:9:550:32 | ... | calls.rb:546:5:551:7 | baz |
|
||||
| calls.rb:548:9:548:11 | call to bar | calls.rb:546:5:551:7 | baz |
|
||||
| calls.rb:548:9:548:11 | self | calls.rb:546:5:551:7 | baz |
|
||||
| calls.rb:549:9:549:24 | ProtectedMethods | calls.rb:546:5:551:7 | baz |
|
||||
@@ -1048,28 +1113,39 @@ enclosingMethod
|
||||
| calls.rb:550:9:550:32 | call to bar | calls.rb:546:5:551:7 | baz |
|
||||
| calls.rb:560:9:560:11 | call to foo | calls.rb:559:5:562:7 | baz |
|
||||
| calls.rb:560:9:560:11 | self | calls.rb:559:5:562:7 | baz |
|
||||
| calls.rb:560:9:561:35 | ... | calls.rb:559:5:562:7 | baz |
|
||||
| calls.rb:561:9:561:27 | ProtectedMethodsSub | calls.rb:559:5:562:7 | baz |
|
||||
| calls.rb:561:9:561:31 | call to new | calls.rb:559:5:562:7 | baz |
|
||||
| calls.rb:561:9:561:35 | call to foo | calls.rb:559:5:562:7 | baz |
|
||||
| calls.rb:580:9:580:17 | call to singleton | calls.rb:579:5:582:7 | mid_method |
|
||||
| calls.rb:580:9:580:17 | self | calls.rb:579:5:582:7 | mid_method |
|
||||
| calls.rb:580:9:581:35 | ... | calls.rb:579:5:582:7 | mid_method |
|
||||
| calls.rb:581:9:581:18 | call to singleton2 | calls.rb:579:5:582:7 | mid_method |
|
||||
| calls.rb:581:9:581:18 | self | calls.rb:579:5:582:7 | mid_method |
|
||||
| calls.rb:596:9:596:18 | ... | calls.rb:595:5:597:7 | call_singleton1 |
|
||||
| calls.rb:596:9:596:18 | call to singleton1 | calls.rb:595:5:597:7 | call_singleton1 |
|
||||
| calls.rb:596:9:596:18 | self | calls.rb:595:5:597:7 | call_singleton1 |
|
||||
| calls.rb:600:9:600:23 | ... | calls.rb:599:5:601:7 | call_call_singleton1 |
|
||||
| calls.rb:600:9:600:23 | call to call_singleton1 | calls.rb:599:5:601:7 | call_call_singleton1 |
|
||||
| calls.rb:600:9:600:23 | self | calls.rb:599:5:601:7 | call_call_singleton1 |
|
||||
| calls.rb:609:9:609:18 | call to singleton1 | calls.rb:608:5:610:7 | call_singleton1 |
|
||||
| calls.rb:609:9:609:18 | self | calls.rb:608:5:610:7 | call_singleton1 |
|
||||
| calls.rb:609:9:609:105 | ... | calls.rb:608:5:610:7 | call_singleton1 |
|
||||
| calls.rb:618:9:618:18 | call to singleton1 | calls.rb:617:5:619:7 | call_singleton1 |
|
||||
| calls.rb:618:9:618:18 | self | calls.rb:617:5:619:7 | call_singleton1 |
|
||||
| calls.rb:618:9:618:105 | ... | calls.rb:617:5:619:7 | call_singleton1 |
|
||||
| calls.rb:628:9:628:12 | self | calls.rb:627:5:629:7 | foo |
|
||||
| calls.rb:628:9:628:16 | ... | calls.rb:627:5:629:7 | foo |
|
||||
| calls.rb:628:9:628:16 | call to bar | calls.rb:627:5:629:7 | foo |
|
||||
| calls.rb:637:9:637:13 | ... | calls.rb:636:5:638:7 | bar |
|
||||
| calls.rb:637:9:637:13 | super call to bar | calls.rb:636:5:638:7 | bar |
|
||||
| calls.rb:643:9:643:10 | C1 | calls.rb:642:5:644:7 | new |
|
||||
| calls.rb:643:9:643:14 | ... | calls.rb:642:5:644:7 | new |
|
||||
| calls.rb:643:9:643:14 | call to new | calls.rb:642:5:644:7 | new |
|
||||
| calls.rb:651:9:651:12 | self | calls.rb:650:5:652:7 | new |
|
||||
| calls.rb:651:9:651:21 | ... | calls.rb:650:5:652:7 | new |
|
||||
| calls.rb:651:9:651:21 | call to allocate | calls.rb:650:5:652:7 | new |
|
||||
| calls.rb:655:9:655:34 | ... | calls.rb:654:5:656:7 | instance |
|
||||
| calls.rb:655:9:655:34 | call to puts | calls.rb:654:5:656:7 | instance |
|
||||
| calls.rb:655:9:655:34 | self | calls.rb:654:5:656:7 | instance |
|
||||
| calls.rb:655:14:655:34 | "CustomNew2#instance" | calls.rb:654:5:656:7 | instance |
|
||||
@@ -1079,27 +1155,34 @@ enclosingMethod
|
||||
| calls.rb:662:5:662:11 | Array | calls.rb:661:1:665:3 | capture_parameter |
|
||||
| calls.rb:662:5:662:11 | [...] | calls.rb:661:1:665:3 | capture_parameter |
|
||||
| calls.rb:662:5:662:11 | call to [] | calls.rb:661:1:665:3 | capture_parameter |
|
||||
| calls.rb:662:5:664:7 | ... | calls.rb:661:1:665:3 | capture_parameter |
|
||||
| calls.rb:662:5:664:7 | call to each | calls.rb:661:1:665:3 | capture_parameter |
|
||||
| calls.rb:662:6:662:6 | 0 | calls.rb:661:1:665:3 | capture_parameter |
|
||||
| calls.rb:662:8:662:8 | 1 | calls.rb:661:1:665:3 | capture_parameter |
|
||||
| calls.rb:662:10:662:10 | 2 | calls.rb:661:1:665:3 | capture_parameter |
|
||||
| calls.rb:662:18:664:7 | do ... end | calls.rb:661:1:665:3 | capture_parameter |
|
||||
| calls.rb:663:9:663:9 | ... | calls.rb:661:1:665:3 | capture_parameter |
|
||||
| calls.rb:663:9:663:9 | x | calls.rb:661:1:665:3 | capture_parameter |
|
||||
| element_reference.rb:2:12:2:12 | x | element_reference.rb:2:5:4:7 | [] |
|
||||
| element_reference.rb:2:12:2:12 | x | element_reference.rb:2:5:4:7 | [] |
|
||||
| element_reference.rb:3:9:3:19 | ... | element_reference.rb:2:5:4:7 | [] |
|
||||
| element_reference.rb:3:9:3:19 | yield ... | element_reference.rb:2:5:4:7 | [] |
|
||||
| element_reference.rb:3:15:3:15 | x | element_reference.rb:2:5:4:7 | [] |
|
||||
| element_reference.rb:3:15:3:19 | ... + ... | element_reference.rb:2:5:4:7 | [] |
|
||||
| element_reference.rb:3:19:3:19 | 1 | element_reference.rb:2:5:4:7 | [] |
|
||||
| hello.rb:3:9:3:22 | ... | hello.rb:2:5:4:7 | hello |
|
||||
| hello.rb:3:9:3:22 | return | hello.rb:2:5:4:7 | hello |
|
||||
| hello.rb:3:16:3:22 | "hello" | hello.rb:2:5:4:7 | hello |
|
||||
| hello.rb:3:17:3:21 | hello | hello.rb:2:5:4:7 | hello |
|
||||
| hello.rb:6:9:6:22 | ... | hello.rb:5:5:7:7 | world |
|
||||
| hello.rb:6:9:6:22 | return | hello.rb:5:5:7:7 | world |
|
||||
| hello.rb:6:16:6:22 | "world" | hello.rb:5:5:7:7 | world |
|
||||
| hello.rb:6:17:6:21 | world | hello.rb:5:5:7:7 | world |
|
||||
| hello.rb:14:9:14:20 | ... | hello.rb:13:5:15:7 | message |
|
||||
| hello.rb:14:9:14:20 | return | hello.rb:13:5:15:7 | message |
|
||||
| hello.rb:14:16:14:20 | call to hello | hello.rb:13:5:15:7 | message |
|
||||
| hello.rb:14:16:14:20 | self | hello.rb:13:5:15:7 | message |
|
||||
| hello.rb:20:9:20:40 | ... | hello.rb:19:5:21:7 | message |
|
||||
| hello.rb:20:9:20:40 | return | hello.rb:19:5:21:7 | message |
|
||||
| hello.rb:20:16:20:20 | super call to message | hello.rb:19:5:21:7 | message |
|
||||
| hello.rb:20:16:20:26 | ... + ... | hello.rb:19:5:21:7 | message |
|
||||
@@ -1113,32 +1196,40 @@ enclosingMethod
|
||||
| hello.rb:20:39:20:39 | ! | hello.rb:19:5:21:7 | message |
|
||||
| instance_fields.rb:4:13:4:18 | @field | instance_fields.rb:3:9:5:11 | create |
|
||||
| instance_fields.rb:4:13:4:18 | self | instance_fields.rb:3:9:5:11 | create |
|
||||
| instance_fields.rb:4:13:4:35 | ... | instance_fields.rb:3:9:5:11 | create |
|
||||
| instance_fields.rb:4:13:4:35 | ... = ... | instance_fields.rb:3:9:5:11 | create |
|
||||
| instance_fields.rb:4:22:4:31 | A_target | instance_fields.rb:3:9:5:11 | create |
|
||||
| instance_fields.rb:4:22:4:35 | call to new | instance_fields.rb:3:9:5:11 | create |
|
||||
| instance_fields.rb:7:13:7:18 | @field | instance_fields.rb:6:9:8:11 | use |
|
||||
| instance_fields.rb:7:13:7:18 | self | instance_fields.rb:6:9:8:11 | use |
|
||||
| instance_fields.rb:7:13:7:25 | ... | instance_fields.rb:6:9:8:11 | use |
|
||||
| instance_fields.rb:7:13:7:25 | call to target | instance_fields.rb:6:9:8:11 | use |
|
||||
| instance_fields.rb:19:13:19:18 | @field | instance_fields.rb:18:9:20:11 | create |
|
||||
| instance_fields.rb:19:13:19:18 | self | instance_fields.rb:18:9:20:11 | create |
|
||||
| instance_fields.rb:19:13:19:35 | ... | instance_fields.rb:18:9:20:11 | create |
|
||||
| instance_fields.rb:19:13:19:35 | ... = ... | instance_fields.rb:18:9:20:11 | create |
|
||||
| instance_fields.rb:19:22:19:31 | B_target | instance_fields.rb:18:9:20:11 | create |
|
||||
| instance_fields.rb:19:22:19:35 | call to new | instance_fields.rb:18:9:20:11 | create |
|
||||
| instance_fields.rb:22:13:22:18 | @field | instance_fields.rb:21:9:23:11 | use |
|
||||
| instance_fields.rb:22:13:22:18 | self | instance_fields.rb:21:9:23:11 | use |
|
||||
| instance_fields.rb:22:13:22:25 | ... | instance_fields.rb:21:9:23:11 | use |
|
||||
| instance_fields.rb:22:13:22:25 | call to target | instance_fields.rb:21:9:23:11 | use |
|
||||
| private.rb:84:7:84:32 | ... | private.rb:83:11:85:5 | m1 |
|
||||
| private.rb:84:7:84:32 | call to puts | private.rb:83:11:85:5 | m1 |
|
||||
| private.rb:84:7:84:32 | self | private.rb:83:11:85:5 | m1 |
|
||||
| private.rb:84:12:84:32 | "PrivateOverride1#m1" | private.rb:83:11:85:5 | m1 |
|
||||
| private.rb:84:13:84:31 | PrivateOverride1#m1 | private.rb:83:11:85:5 | m1 |
|
||||
| private.rb:88:7:88:32 | ... | private.rb:87:11:89:5 | m2 |
|
||||
| private.rb:88:7:88:32 | call to puts | private.rb:87:11:89:5 | m2 |
|
||||
| private.rb:88:7:88:32 | self | private.rb:87:11:89:5 | m2 |
|
||||
| private.rb:88:12:88:32 | "PrivateOverride1#m2" | private.rb:87:11:89:5 | m2 |
|
||||
| private.rb:88:13:88:31 | PrivateOverride1#m2 | private.rb:87:11:89:5 | m2 |
|
||||
| private.rb:92:7:92:8 | ... | private.rb:91:3:93:5 | call_m1 |
|
||||
| private.rb:92:7:92:8 | call to m1 | private.rb:91:3:93:5 | call_m1 |
|
||||
| private.rb:92:7:92:8 | self | private.rb:91:3:93:5 | call_m1 |
|
||||
| private.rb:98:7:98:32 | call to puts | private.rb:97:11:101:5 | m1 |
|
||||
| private.rb:98:7:98:32 | self | private.rb:97:11:101:5 | m1 |
|
||||
| private.rb:98:7:100:45 | ... | private.rb:97:11:101:5 | m1 |
|
||||
| private.rb:98:12:98:32 | "PrivateOverride2#m1" | private.rb:97:11:101:5 | m1 |
|
||||
| private.rb:98:13:98:31 | PrivateOverride2#m1 | private.rb:97:11:101:5 | m1 |
|
||||
| private.rb:99:7:99:8 | call to m2 | private.rb:97:11:101:5 | m1 |
|
||||
@@ -1148,11 +1239,15 @@ enclosingMethod
|
||||
| private.rb:100:7:100:29 | call to m1 | private.rb:97:11:101:5 | m1 |
|
||||
| toplevel_self_singleton.rb:10:9:10:27 | call to ab_singleton_method | toplevel_self_singleton.rb:9:5:11:7 | method_in_block |
|
||||
| toplevel_self_singleton.rb:10:9:10:27 | self | toplevel_self_singleton.rb:9:5:11:7 | method_in_block |
|
||||
| toplevel_self_singleton.rb:10:9:10:60 | ... | toplevel_self_singleton.rb:9:5:11:7 | method_in_block |
|
||||
| toplevel_self_singleton.rb:14:9:14:27 | call to ab_singleton_method | toplevel_self_singleton.rb:13:5:15:7 | method_in_block |
|
||||
| toplevel_self_singleton.rb:14:9:14:27 | self | toplevel_self_singleton.rb:13:5:15:7 | method_in_block |
|
||||
| toplevel_self_singleton.rb:14:9:14:60 | ... | toplevel_self_singleton.rb:13:5:15:7 | method_in_block |
|
||||
| toplevel_self_singleton.rb:20:9:20:27 | call to ab_singleton_method | toplevel_self_singleton.rb:19:5:21:7 | method_in_struct |
|
||||
| toplevel_self_singleton.rb:20:9:20:27 | self | toplevel_self_singleton.rb:19:5:21:7 | method_in_struct |
|
||||
| toplevel_self_singleton.rb:20:9:20:60 | ... | toplevel_self_singleton.rb:19:5:21:7 | method_in_struct |
|
||||
| toplevel_self_singleton.rb:30:13:30:19 | call to call_me | toplevel_self_singleton.rb:29:9:32:11 | call_you |
|
||||
| toplevel_self_singleton.rb:30:13:30:19 | self | toplevel_self_singleton.rb:29:9:32:11 | call_you |
|
||||
| toplevel_self_singleton.rb:30:13:31:20 | ... | toplevel_self_singleton.rb:29:9:32:11 | call_you |
|
||||
| toplevel_self_singleton.rb:31:13:31:20 | call to call_you | toplevel_self_singleton.rb:29:9:32:11 | call_you |
|
||||
| toplevel_self_singleton.rb:31:13:31:20 | self | toplevel_self_singleton.rb:29:9:32:11 | call_you |
|
||||
|
||||
@@ -571,6 +571,7 @@ resolveConstantWriteAccess
|
||||
| unresolved_subclass.rb:21:1:22:3 | A | UnresolvedNamespace::X1::X2::X3::A |
|
||||
enclosingModule
|
||||
| calls.rb:1:1:3:3 | foo | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:2:5:2:14 | ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:2:5:2:14 | call to puts | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:2:5:2:14 | self | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:2:10:2:14 | "foo" | calls.rb:1:1:667:52 | calls.rb |
|
||||
@@ -579,6 +580,7 @@ enclosingModule
|
||||
| calls.rb:5:1:5:3 | self | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:7:1:9:3 | bar | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:7:5:7:8 | self | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:8:5:8:15 | ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:8:5:8:15 | call to puts | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:8:5:8:15 | self | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:8:10:8:15 | "bar1" | calls.rb:1:1:667:52 | calls.rb |
|
||||
@@ -587,6 +589,7 @@ enclosingModule
|
||||
| calls.rb:11:1:11:8 | call to bar | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:13:1:15:3 | bar | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:13:5:13:8 | self | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:14:5:14:15 | ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:14:5:14:15 | call to puts | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:14:5:14:15 | self | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:14:10:14:15 | "bar2" | calls.rb:1:1:667:52 | calls.rb |
|
||||
@@ -599,10 +602,12 @@ enclosingModule
|
||||
| calls.rb:22:5:24:7 | instance_m | calls.rb:21:1:34:3 | M |
|
||||
| calls.rb:23:9:23:19 | call to singleton_m | calls.rb:21:1:34:3 | M |
|
||||
| calls.rb:23:9:23:19 | self | calls.rb:21:1:34:3 | M |
|
||||
| calls.rb:23:9:23:35 | ... | calls.rb:21:1:34:3 | M |
|
||||
| calls.rb:25:5:27:7 | singleton_m | calls.rb:21:1:34:3 | M |
|
||||
| calls.rb:25:9:25:12 | self | calls.rb:21:1:34:3 | M |
|
||||
| calls.rb:26:9:26:18 | call to instance_m | calls.rb:21:1:34:3 | M |
|
||||
| calls.rb:26:9:26:18 | self | calls.rb:21:1:34:3 | M |
|
||||
| calls.rb:26:9:26:34 | ... | calls.rb:21:1:34:3 | M |
|
||||
| calls.rb:29:5:29:14 | call to instance_m | calls.rb:21:1:34:3 | M |
|
||||
| calls.rb:29:5:29:14 | self | calls.rb:21:1:34:3 | M |
|
||||
| calls.rb:30:5:30:8 | self | calls.rb:21:1:34:3 | M |
|
||||
@@ -618,6 +623,7 @@ enclosingModule
|
||||
| calls.rb:39:1:41:3 | call_instance_m | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:40:5:40:14 | call to instance_m | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:40:5:40:14 | self | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:40:5:40:30 | ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:43:1:58:3 | C | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:44:5:44:13 | call to include | calls.rb:43:1:58:3 | C |
|
||||
| calls.rb:44:5:44:13 | self | calls.rb:43:1:58:3 | C |
|
||||
@@ -633,6 +639,7 @@ enclosingModule
|
||||
| calls.rb:51:5:57:7 | baz | calls.rb:43:1:58:3 | C |
|
||||
| calls.rb:52:9:52:18 | call to instance_m | calls.rb:43:1:58:3 | C |
|
||||
| calls.rb:52:9:52:18 | self | calls.rb:43:1:58:3 | C |
|
||||
| calls.rb:52:9:56:40 | ... | calls.rb:43:1:58:3 | C |
|
||||
| calls.rb:53:9:53:12 | self | calls.rb:43:1:58:3 | C |
|
||||
| calls.rb:53:9:53:23 | call to instance_m | calls.rb:43:1:58:3 | C |
|
||||
| calls.rb:55:9:55:19 | call to singleton_m | calls.rb:43:1:58:3 | C |
|
||||
@@ -652,6 +659,7 @@ enclosingModule
|
||||
| calls.rb:65:1:69:3 | D | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:65:11:65:11 | C | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:66:5:68:7 | baz | calls.rb:65:1:69:3 | D |
|
||||
| calls.rb:67:9:67:13 | ... | calls.rb:65:1:69:3 | D |
|
||||
| calls.rb:67:9:67:13 | super call to baz | calls.rb:65:1:69:3 | D |
|
||||
| calls.rb:71:1:71:1 | d | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:71:1:71:9 | ... = ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
@@ -672,14 +680,17 @@ enclosingModule
|
||||
| calls.rb:76:28:76:28 | 5 | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:77:5:77:5 | a | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:77:5:77:16 | call to bit_length | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:77:5:78:16 | ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:78:5:78:5 | b | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:78:5:78:16 | call to bit_length | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:81:1:83:3 | call_block | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:82:5:82:11 | ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:82:5:82:11 | yield ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:82:11:82:11 | 1 | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:85:1:89:3 | foo | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:86:5:86:7 | var | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:86:5:86:18 | ... = ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:86:5:88:29 | ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:86:11:86:14 | Hash | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:86:11:86:18 | call to new | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:87:5:87:7 | var | calls.rb:1:1:667:52 | calls.rb |
|
||||
@@ -691,6 +702,7 @@ enclosingModule
|
||||
| calls.rb:88:19:88:19 | x | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:88:19:88:19 | x | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:88:22:88:24 | var | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:88:22:88:27 | ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:88:22:88:27 | ...[...] | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:88:26:88:26 | x | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:91:1:94:3 | Integer | calls.rb:1:1:667:52 | calls.rb |
|
||||
@@ -707,6 +719,7 @@ enclosingModule
|
||||
| calls.rb:102:5:102:30 | puts | calls.rb:100:1:103:3 | Kernel |
|
||||
| calls.rb:102:14:102:14 | x | calls.rb:100:1:103:3 | Kernel |
|
||||
| calls.rb:102:14:102:14 | x | calls.rb:100:1:103:3 | Kernel |
|
||||
| calls.rb:102:17:102:26 | ... | calls.rb:100:1:103:3 | Kernel |
|
||||
| calls.rb:102:17:102:26 | call to old_puts | calls.rb:100:1:103:3 | Kernel |
|
||||
| calls.rb:102:17:102:26 | self | calls.rb:100:1:103:3 | Kernel |
|
||||
| calls.rb:102:26:102:26 | x | calls.rb:100:1:103:3 | Kernel |
|
||||
@@ -720,6 +733,7 @@ enclosingModule
|
||||
| calls.rb:108:5:110:7 | include | calls.rb:105:1:113:3 | Module |
|
||||
| calls.rb:108:17:108:17 | x | calls.rb:105:1:113:3 | Module |
|
||||
| calls.rb:108:17:108:17 | x | calls.rb:105:1:113:3 | Module |
|
||||
| calls.rb:109:9:109:21 | ... | calls.rb:105:1:113:3 | Module |
|
||||
| calls.rb:109:9:109:21 | call to old_include | calls.rb:105:1:113:3 | Module |
|
||||
| calls.rb:109:9:109:21 | self | calls.rb:105:1:113:3 | Module |
|
||||
| calls.rb:109:21:109:21 | x | calls.rb:105:1:113:3 | Module |
|
||||
@@ -740,6 +754,7 @@ enclosingModule
|
||||
| calls.rb:122:5:122:31 | [] | calls.rb:120:1:123:3 | Hash |
|
||||
| calls.rb:122:12:122:12 | x | calls.rb:120:1:123:3 | Hash |
|
||||
| calls.rb:122:12:122:12 | x | calls.rb:120:1:123:3 | Hash |
|
||||
| calls.rb:122:15:122:27 | ... | calls.rb:120:1:123:3 | Hash |
|
||||
| calls.rb:122:15:122:27 | call to old_lookup | calls.rb:120:1:123:3 | Hash |
|
||||
| calls.rb:122:15:122:27 | self | calls.rb:120:1:123:3 | Hash |
|
||||
| calls.rb:122:26:122:26 | x | calls.rb:120:1:123:3 | Hash |
|
||||
@@ -752,6 +767,7 @@ enclosingModule
|
||||
| calls.rb:127:3:127:29 | [] | calls.rb:125:1:138:3 | Array |
|
||||
| calls.rb:127:10:127:10 | x | calls.rb:125:1:138:3 | Array |
|
||||
| calls.rb:127:10:127:10 | x | calls.rb:125:1:138:3 | Array |
|
||||
| calls.rb:127:13:127:25 | ... | calls.rb:125:1:138:3 | Array |
|
||||
| calls.rb:127:13:127:25 | call to old_lookup | calls.rb:125:1:138:3 | Array |
|
||||
| calls.rb:127:13:127:25 | self | calls.rb:125:1:138:3 | Array |
|
||||
| calls.rb:127:24:127:24 | x | calls.rb:125:1:138:3 | Array |
|
||||
@@ -761,6 +777,7 @@ enclosingModule
|
||||
| calls.rb:131:16:131:19 | body | calls.rb:125:1:138:3 | Array |
|
||||
| calls.rb:132:5:132:5 | x | calls.rb:125:1:138:3 | Array |
|
||||
| calls.rb:132:5:132:9 | ... = ... | calls.rb:125:1:138:3 | Array |
|
||||
| calls.rb:132:5:136:7 | ... | calls.rb:125:1:138:3 | Array |
|
||||
| calls.rb:132:9:132:9 | 0 | calls.rb:125:1:138:3 | Array |
|
||||
| calls.rb:133:5:136:7 | while ... | calls.rb:125:1:138:3 | Array |
|
||||
| calls.rb:133:11:133:11 | x | calls.rb:125:1:138:3 | Array |
|
||||
@@ -780,6 +797,7 @@ enclosingModule
|
||||
| calls.rb:135:11:135:12 | ... + ... | calls.rb:125:1:138:3 | Array |
|
||||
| calls.rb:135:14:135:14 | 1 | calls.rb:125:1:138:3 | Array |
|
||||
| calls.rb:140:1:142:3 | funny | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:141:5:141:20 | ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:141:5:141:20 | yield ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:141:11:141:20 | "prefix: " | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:141:12:141:19 | prefix: | calls.rb:1:1:667:52 | calls.rb |
|
||||
@@ -788,6 +806,7 @@ enclosingModule
|
||||
| calls.rb:144:7:144:30 | { ... } | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:144:10:144:10 | i | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:144:10:144:10 | i | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:144:13:144:29 | ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:144:13:144:29 | call to puts | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:144:13:144:29 | self | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:144:18:144:18 | i | calls.rb:1:1:667:52 | calls.rb |
|
||||
@@ -814,6 +833,7 @@ enclosingModule
|
||||
| calls.rb:150:26:150:26 | i | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:150:29:150:29 | v | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:150:29:150:29 | v | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:150:32:150:61 | ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:150:32:150:61 | call to puts | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:150:32:150:61 | self | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:150:37:150:61 | "#{...} -> #{...}" | calls.rb:1:1:667:52 | calls.rb |
|
||||
@@ -834,6 +854,7 @@ enclosingModule
|
||||
| calls.rb:152:20:152:20 | i | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:152:20:152:20 | i | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:152:23:152:23 | i | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:152:23:152:34 | ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:152:23:152:34 | call to bit_length | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:154:1:154:7 | Array | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:154:1:154:7 | [...] | calls.rb:1:1:667:52 | calls.rb |
|
||||
@@ -845,6 +866,7 @@ enclosingModule
|
||||
| calls.rb:154:17:154:40 | { ... } | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:154:20:154:20 | i | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:154:20:154:20 | i | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:154:23:154:39 | ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:154:23:154:39 | call to puts | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:154:23:154:39 | self | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:154:28:154:28 | i | calls.rb:1:1:667:52 | calls.rb |
|
||||
@@ -862,6 +884,7 @@ enclosingModule
|
||||
| calls.rb:156:21:156:21 | _ | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:156:24:156:24 | v | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:156:24:156:24 | v | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:156:27:156:36 | ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:156:27:156:36 | call to puts | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:156:27:156:36 | self | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:156:32:156:32 | v | calls.rb:1:1:667:52 | calls.rb |
|
||||
@@ -869,6 +892,7 @@ enclosingModule
|
||||
| calls.rb:158:1:160:3 | indirect | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:158:14:158:15 | &b | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:158:15:158:15 | b | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:159:5:159:17 | ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:159:5:159:17 | call to call_block | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:159:5:159:17 | self | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:159:16:159:17 | &... | calls.rb:1:1:667:52 | calls.rb |
|
||||
@@ -879,10 +903,12 @@ enclosingModule
|
||||
| calls.rb:162:13:162:13 | i | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:162:13:162:13 | i | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:162:16:162:16 | i | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:162:16:162:27 | ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:162:16:162:27 | call to bit_length | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:165:1:169:3 | S | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:166:5:168:7 | s_method | calls.rb:165:1:169:3 | S |
|
||||
| calls.rb:167:9:167:12 | self | calls.rb:165:1:169:3 | S |
|
||||
| calls.rb:167:9:167:17 | ... | calls.rb:165:1:169:3 | S |
|
||||
| calls.rb:167:9:167:17 | call to to_s | calls.rb:165:1:169:3 | S |
|
||||
| calls.rb:171:1:174:3 | A | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:171:11:171:11 | S | calls.rb:1:1:667:52 | calls.rb |
|
||||
@@ -907,6 +933,7 @@ enclosingModule
|
||||
| calls.rb:191:9:191:12 | self | calls.rb:190:1:226:3 | Singletons |
|
||||
| calls.rb:192:9:192:26 | call to puts | calls.rb:190:1:226:3 | Singletons |
|
||||
| calls.rb:192:9:192:26 | self | calls.rb:190:1:226:3 | Singletons |
|
||||
| calls.rb:192:9:193:24 | ... | calls.rb:190:1:226:3 | Singletons |
|
||||
| calls.rb:192:14:192:26 | "singleton_a" | calls.rb:190:1:226:3 | Singletons |
|
||||
| calls.rb:192:15:192:25 | singleton_a | calls.rb:190:1:226:3 | Singletons |
|
||||
| calls.rb:193:9:193:12 | self | calls.rb:190:1:226:3 | Singletons |
|
||||
@@ -915,12 +942,14 @@ enclosingModule
|
||||
| calls.rb:196:9:196:12 | self | calls.rb:190:1:226:3 | Singletons |
|
||||
| calls.rb:197:9:197:26 | call to puts | calls.rb:190:1:226:3 | Singletons |
|
||||
| calls.rb:197:9:197:26 | self | calls.rb:190:1:226:3 | Singletons |
|
||||
| calls.rb:197:9:198:24 | ... | calls.rb:190:1:226:3 | Singletons |
|
||||
| calls.rb:197:14:197:26 | "singleton_b" | calls.rb:190:1:226:3 | Singletons |
|
||||
| calls.rb:197:15:197:25 | singleton_b | calls.rb:190:1:226:3 | Singletons |
|
||||
| calls.rb:198:9:198:12 | self | calls.rb:190:1:226:3 | Singletons |
|
||||
| calls.rb:198:9:198:24 | call to singleton_c | calls.rb:190:1:226:3 | Singletons |
|
||||
| calls.rb:201:5:203:7 | singleton_c | calls.rb:190:1:226:3 | Singletons |
|
||||
| calls.rb:201:9:201:12 | self | calls.rb:190:1:226:3 | Singletons |
|
||||
| calls.rb:202:9:202:26 | ... | calls.rb:190:1:226:3 | Singletons |
|
||||
| calls.rb:202:9:202:26 | call to puts | calls.rb:190:1:226:3 | Singletons |
|
||||
| calls.rb:202:9:202:26 | self | calls.rb:190:1:226:3 | Singletons |
|
||||
| calls.rb:202:14:202:26 | "singleton_c" | calls.rb:190:1:226:3 | Singletons |
|
||||
@@ -929,13 +958,16 @@ enclosingModule
|
||||
| calls.rb:205:9:205:12 | self | calls.rb:190:1:226:3 | Singletons |
|
||||
| calls.rb:206:9:206:26 | call to puts | calls.rb:190:1:226:3 | Singletons |
|
||||
| calls.rb:206:9:206:26 | self | calls.rb:190:1:226:3 | Singletons |
|
||||
| calls.rb:206:9:207:24 | ... | calls.rb:190:1:226:3 | Singletons |
|
||||
| calls.rb:206:14:206:26 | "singleton_d" | calls.rb:190:1:226:3 | Singletons |
|
||||
| calls.rb:206:15:206:25 | singleton_d | calls.rb:190:1:226:3 | Singletons |
|
||||
| calls.rb:207:9:207:12 | self | calls.rb:190:1:226:3 | Singletons |
|
||||
| calls.rb:207:9:207:24 | call to singleton_a | calls.rb:190:1:226:3 | Singletons |
|
||||
| calls.rb:210:5:215:7 | instance | calls.rb:190:1:226:3 | Singletons |
|
||||
| calls.rb:211:9:213:11 | singleton_e | calls.rb:190:1:226:3 | Singletons |
|
||||
| calls.rb:211:9:214:19 | ... | calls.rb:190:1:226:3 | Singletons |
|
||||
| calls.rb:211:13:211:16 | self | calls.rb:190:1:226:3 | Singletons |
|
||||
| calls.rb:212:13:212:30 | ... | calls.rb:190:1:226:3 | Singletons |
|
||||
| calls.rb:212:13:212:30 | call to puts | calls.rb:190:1:226:3 | Singletons |
|
||||
| calls.rb:212:13:212:30 | self | calls.rb:190:1:226:3 | Singletons |
|
||||
| calls.rb:212:18:212:30 | "singleton_e" | calls.rb:190:1:226:3 | Singletons |
|
||||
@@ -945,12 +977,14 @@ enclosingModule
|
||||
| calls.rb:217:5:221:7 | class << ... | calls.rb:190:1:226:3 | Singletons |
|
||||
| calls.rb:217:14:217:17 | self | calls.rb:190:1:226:3 | Singletons |
|
||||
| calls.rb:218:9:220:11 | singleton_f | calls.rb:217:5:221:7 | class << ... |
|
||||
| calls.rb:219:13:219:30 | ... | calls.rb:217:5:221:7 | class << ... |
|
||||
| calls.rb:219:13:219:30 | call to puts | calls.rb:217:5:221:7 | class << ... |
|
||||
| calls.rb:219:13:219:30 | self | calls.rb:217:5:221:7 | class << ... |
|
||||
| calls.rb:219:18:219:30 | "singleton_f" | calls.rb:217:5:221:7 | class << ... |
|
||||
| calls.rb:219:19:219:29 | singleton_f | calls.rb:217:5:221:7 | class << ... |
|
||||
| calls.rb:223:5:225:7 | call_singleton_g | calls.rb:190:1:226:3 | Singletons |
|
||||
| calls.rb:224:9:224:12 | self | calls.rb:190:1:226:3 | Singletons |
|
||||
| calls.rb:224:9:224:24 | ... | calls.rb:190:1:226:3 | Singletons |
|
||||
| calls.rb:224:9:224:24 | call to singleton_g | calls.rb:190:1:226:3 | Singletons |
|
||||
| calls.rb:228:1:228:10 | Singletons | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:228:1:228:22 | call to singleton_a | calls.rb:1:1:667:52 | calls.rb |
|
||||
@@ -966,6 +1000,7 @@ enclosingModule
|
||||
| calls.rb:234:1:234:14 | call to singleton_e | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:236:1:238:3 | singleton_g | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:236:5:236:6 | c1 | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:237:5:237:24 | ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:237:5:237:24 | call to puts | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:237:5:237:24 | self | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:237:10:237:24 | "singleton_g_1" | calls.rb:1:1:667:52 | calls.rb |
|
||||
@@ -976,6 +1011,7 @@ enclosingModule
|
||||
| calls.rb:241:1:241:19 | call to call_singleton_g | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:243:1:245:3 | singleton_g | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:243:5:243:6 | c1 | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:244:5:244:24 | ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:244:5:244:24 | call to puts | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:244:5:244:24 | self | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:244:10:244:24 | "singleton_g_2" | calls.rb:1:1:667:52 | calls.rb |
|
||||
@@ -987,6 +1023,7 @@ enclosingModule
|
||||
| calls.rb:250:1:254:3 | class << ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:250:10:250:11 | c1 | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:251:5:253:7 | singleton_g | calls.rb:250:1:254:3 | class << ... |
|
||||
| calls.rb:252:9:252:28 | ... | calls.rb:250:1:254:3 | class << ... |
|
||||
| calls.rb:252:9:252:28 | call to puts | calls.rb:250:1:254:3 | class << ... |
|
||||
| calls.rb:252:9:252:28 | self | calls.rb:250:1:254:3 | class << ... |
|
||||
| calls.rb:252:14:252:28 | "singleton_g_3" | calls.rb:250:1:254:3 | class << ... |
|
||||
@@ -1011,6 +1048,7 @@ enclosingModule
|
||||
| calls.rb:265:7:265:15 | top-level | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:267:1:269:3 | singleton_g | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:267:5:267:14 | Singletons | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:268:5:268:22 | ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:268:5:268:22 | call to puts | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:268:5:268:22 | self | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:268:10:268:22 | "singleton_g" | calls.rb:1:1:667:52 | calls.rb |
|
||||
@@ -1035,8 +1073,10 @@ enclosingModule
|
||||
| calls.rb:279:5:279:8 | type | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:279:5:279:12 | call to new | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:279:5:279:21 | call to instance | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:279:5:285:20 | ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:281:5:283:7 | singleton_h | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:281:9:281:12 | type | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:282:9:282:26 | ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:282:9:282:26 | call to puts | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:282:9:282:26 | self | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:282:14:282:26 | "singleton_h" | calls.rb:1:1:667:52 | calls.rb |
|
||||
@@ -1054,6 +1094,7 @@ enclosingModule
|
||||
| calls.rb:293:1:297:3 | class << ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:293:10:293:10 | x | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:294:5:296:7 | singleton_i | calls.rb:293:1:297:3 | class << ... |
|
||||
| calls.rb:295:9:295:26 | ... | calls.rb:293:1:297:3 | class << ... |
|
||||
| calls.rb:295:9:295:26 | call to puts | calls.rb:293:1:297:3 | class << ... |
|
||||
| calls.rb:295:9:295:26 | self | calls.rb:293:1:297:3 | class << ... |
|
||||
| calls.rb:295:14:295:26 | "singleton_i" | calls.rb:293:1:297:3 | class << ... |
|
||||
@@ -1065,6 +1106,7 @@ enclosingModule
|
||||
| calls.rb:302:1:306:3 | class << ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:302:10:302:19 | Singletons | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:303:5:305:7 | singleton_j | calls.rb:302:1:306:3 | class << ... |
|
||||
| calls.rb:304:9:304:26 | ... | calls.rb:302:1:306:3 | class << ... |
|
||||
| calls.rb:304:9:304:26 | call to puts | calls.rb:302:1:306:3 | class << ... |
|
||||
| calls.rb:304:9:304:26 | self | calls.rb:302:1:306:3 | class << ... |
|
||||
| calls.rb:304:14:304:26 | "singleton_j" | calls.rb:302:1:306:3 | class << ... |
|
||||
@@ -1075,6 +1117,7 @@ enclosingModule
|
||||
| calls.rb:311:5:314:7 | instance | calls.rb:310:1:321:3 | SelfNew |
|
||||
| calls.rb:312:9:312:31 | call to puts | calls.rb:310:1:321:3 | SelfNew |
|
||||
| calls.rb:312:9:312:31 | self | calls.rb:310:1:321:3 | SelfNew |
|
||||
| calls.rb:312:9:313:36 | ... | calls.rb:310:1:321:3 | SelfNew |
|
||||
| calls.rb:312:14:312:31 | "SelfNew#instance" | calls.rb:310:1:321:3 | SelfNew |
|
||||
| calls.rb:312:15:312:30 | SelfNew#instance | calls.rb:310:1:321:3 | SelfNew |
|
||||
| calls.rb:313:9:313:11 | call to new | calls.rb:310:1:321:3 | SelfNew |
|
||||
@@ -1084,6 +1127,7 @@ enclosingModule
|
||||
| calls.rb:316:9:316:12 | self | calls.rb:310:1:321:3 | SelfNew |
|
||||
| calls.rb:317:9:317:11 | call to new | calls.rb:310:1:321:3 | SelfNew |
|
||||
| calls.rb:317:9:317:11 | self | calls.rb:310:1:321:3 | SelfNew |
|
||||
| calls.rb:317:9:317:20 | ... | calls.rb:310:1:321:3 | SelfNew |
|
||||
| calls.rb:317:9:317:20 | call to instance | calls.rb:310:1:321:3 | SelfNew |
|
||||
| calls.rb:320:5:320:7 | call to new | calls.rb:310:1:321:3 | SelfNew |
|
||||
| calls.rb:320:5:320:7 | self | calls.rb:310:1:321:3 | SelfNew |
|
||||
@@ -1092,15 +1136,18 @@ enclosingModule
|
||||
| calls.rb:323:1:323:17 | call to singleton | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:325:1:333:3 | C1 | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:326:5:328:7 | instance | calls.rb:325:1:333:3 | C1 |
|
||||
| calls.rb:327:9:327:26 | ... | calls.rb:325:1:333:3 | C1 |
|
||||
| calls.rb:327:9:327:26 | call to puts | calls.rb:325:1:333:3 | C1 |
|
||||
| calls.rb:327:9:327:26 | self | calls.rb:325:1:333:3 | C1 |
|
||||
| calls.rb:327:14:327:26 | "C1#instance" | calls.rb:325:1:333:3 | C1 |
|
||||
| calls.rb:327:15:327:25 | C1#instance | calls.rb:325:1:333:3 | C1 |
|
||||
| calls.rb:330:5:332:7 | return_self | calls.rb:325:1:333:3 | C1 |
|
||||
| calls.rb:331:9:331:12 | ... | calls.rb:325:1:333:3 | C1 |
|
||||
| calls.rb:331:9:331:12 | self | calls.rb:325:1:333:3 | C1 |
|
||||
| calls.rb:335:1:339:3 | C2 | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:335:12:335:13 | C1 | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:336:5:338:7 | instance | calls.rb:335:1:339:3 | C2 |
|
||||
| calls.rb:337:9:337:26 | ... | calls.rb:335:1:339:3 | C2 |
|
||||
| calls.rb:337:9:337:26 | call to puts | calls.rb:335:1:339:3 | C2 |
|
||||
| calls.rb:337:9:337:26 | self | calls.rb:335:1:339:3 | C2 |
|
||||
| calls.rb:337:14:337:26 | "C2#instance" | calls.rb:335:1:339:3 | C2 |
|
||||
@@ -1108,6 +1155,7 @@ enclosingModule
|
||||
| calls.rb:341:1:345:3 | C3 | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:341:12:341:13 | C2 | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:342:5:344:7 | instance | calls.rb:341:1:345:3 | C3 |
|
||||
| calls.rb:343:9:343:26 | ... | calls.rb:341:1:345:3 | C3 |
|
||||
| calls.rb:343:9:343:26 | call to puts | calls.rb:341:1:345:3 | C3 |
|
||||
| calls.rb:343:9:343:26 | self | calls.rb:341:1:345:3 | C3 |
|
||||
| calls.rb:343:14:343:26 | "C3#instance" | calls.rb:341:1:345:3 | C3 |
|
||||
@@ -1116,6 +1164,7 @@ enclosingModule
|
||||
| calls.rb:347:22:347:22 | x | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:347:22:347:22 | x | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:348:5:356:7 | case ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:348:5:362:7 | ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:348:10:348:10 | x | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:349:5:350:18 | when ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:349:10:349:11 | C3 | calls.rb:1:1:667:52 | calls.rb |
|
||||
@@ -1182,8 +1231,10 @@ enclosingModule
|
||||
| calls.rb:374:1:378:3 | add_singleton | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:374:19:374:19 | x | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:374:19:374:19 | x | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:375:5:377:7 | ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:375:5:377:7 | instance | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:375:9:375:9 | x | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:376:9:376:28 | ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:376:9:376:28 | call to puts | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:376:9:376:28 | self | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:376:14:376:28 | "instance_on x" | calls.rb:1:1:667:52 | calls.rb |
|
||||
@@ -1204,30 +1255,36 @@ enclosingModule
|
||||
| calls.rb:386:5:398:7 | class << ... | calls.rb:385:1:413:3 | SingletonOverride1 |
|
||||
| calls.rb:386:14:386:17 | self | calls.rb:385:1:413:3 | SingletonOverride1 |
|
||||
| calls.rb:387:9:389:11 | singleton1 | calls.rb:386:5:398:7 | class << ... |
|
||||
| calls.rb:388:13:388:48 | ... | calls.rb:386:5:398:7 | class << ... |
|
||||
| calls.rb:388:13:388:48 | call to puts | calls.rb:386:5:398:7 | class << ... |
|
||||
| calls.rb:388:13:388:48 | self | calls.rb:386:5:398:7 | class << ... |
|
||||
| calls.rb:388:18:388:48 | "SingletonOverride1#singleton1" | calls.rb:386:5:398:7 | class << ... |
|
||||
| calls.rb:388:19:388:47 | SingletonOverride1#singleton1 | calls.rb:386:5:398:7 | class << ... |
|
||||
| calls.rb:391:9:393:11 | call_singleton1 | calls.rb:386:5:398:7 | class << ... |
|
||||
| calls.rb:392:13:392:22 | ... | calls.rb:386:5:398:7 | class << ... |
|
||||
| calls.rb:392:13:392:22 | call to singleton1 | calls.rb:386:5:398:7 | class << ... |
|
||||
| calls.rb:392:13:392:22 | self | calls.rb:386:5:398:7 | class << ... |
|
||||
| calls.rb:395:9:397:11 | factory | calls.rb:386:5:398:7 | class << ... |
|
||||
| calls.rb:396:13:396:16 | self | calls.rb:386:5:398:7 | class << ... |
|
||||
| calls.rb:396:13:396:20 | call to new | calls.rb:386:5:398:7 | class << ... |
|
||||
| calls.rb:396:13:396:30 | ... | calls.rb:386:5:398:7 | class << ... |
|
||||
| calls.rb:396:13:396:30 | call to instance1 | calls.rb:386:5:398:7 | class << ... |
|
||||
| calls.rb:400:5:402:7 | singleton2 | calls.rb:385:1:413:3 | SingletonOverride1 |
|
||||
| calls.rb:400:9:400:12 | self | calls.rb:385:1:413:3 | SingletonOverride1 |
|
||||
| calls.rb:401:9:401:44 | ... | calls.rb:385:1:413:3 | SingletonOverride1 |
|
||||
| calls.rb:401:9:401:44 | call to puts | calls.rb:385:1:413:3 | SingletonOverride1 |
|
||||
| calls.rb:401:9:401:44 | self | calls.rb:385:1:413:3 | SingletonOverride1 |
|
||||
| calls.rb:401:14:401:44 | "SingletonOverride1#singleton2" | calls.rb:385:1:413:3 | SingletonOverride1 |
|
||||
| calls.rb:401:15:401:43 | SingletonOverride1#singleton2 | calls.rb:385:1:413:3 | SingletonOverride1 |
|
||||
| calls.rb:404:5:406:7 | call_singleton2 | calls.rb:385:1:413:3 | SingletonOverride1 |
|
||||
| calls.rb:404:9:404:12 | self | calls.rb:385:1:413:3 | SingletonOverride1 |
|
||||
| calls.rb:405:9:405:18 | ... | calls.rb:385:1:413:3 | SingletonOverride1 |
|
||||
| calls.rb:405:9:405:18 | call to singleton2 | calls.rb:385:1:413:3 | SingletonOverride1 |
|
||||
| calls.rb:405:9:405:18 | self | calls.rb:385:1:413:3 | SingletonOverride1 |
|
||||
| calls.rb:408:5:408:14 | call to singleton2 | calls.rb:385:1:413:3 | SingletonOverride1 |
|
||||
| calls.rb:408:5:408:14 | self | calls.rb:385:1:413:3 | SingletonOverride1 |
|
||||
| calls.rb:410:5:412:7 | instance1 | calls.rb:385:1:413:3 | SingletonOverride1 |
|
||||
| calls.rb:411:9:411:43 | ... | calls.rb:385:1:413:3 | SingletonOverride1 |
|
||||
| calls.rb:411:9:411:43 | call to puts | calls.rb:385:1:413:3 | SingletonOverride1 |
|
||||
| calls.rb:411:9:411:43 | self | calls.rb:385:1:413:3 | SingletonOverride1 |
|
||||
| calls.rb:411:14:411:43 | "SingletonOverride1#instance1" | calls.rb:385:1:413:3 | SingletonOverride1 |
|
||||
@@ -1245,17 +1302,20 @@ enclosingModule
|
||||
| calls.rb:421:5:425:7 | class << ... | calls.rb:420:1:434:3 | SingletonOverride2 |
|
||||
| calls.rb:421:14:421:17 | self | calls.rb:420:1:434:3 | SingletonOverride2 |
|
||||
| calls.rb:422:9:424:11 | singleton1 | calls.rb:421:5:425:7 | class << ... |
|
||||
| calls.rb:423:13:423:48 | ... | calls.rb:421:5:425:7 | class << ... |
|
||||
| calls.rb:423:13:423:48 | call to puts | calls.rb:421:5:425:7 | class << ... |
|
||||
| calls.rb:423:13:423:48 | self | calls.rb:421:5:425:7 | class << ... |
|
||||
| calls.rb:423:18:423:48 | "SingletonOverride2#singleton1" | calls.rb:421:5:425:7 | class << ... |
|
||||
| calls.rb:423:19:423:47 | SingletonOverride2#singleton1 | calls.rb:421:5:425:7 | class << ... |
|
||||
| calls.rb:427:5:429:7 | singleton2 | calls.rb:420:1:434:3 | SingletonOverride2 |
|
||||
| calls.rb:427:9:427:12 | self | calls.rb:420:1:434:3 | SingletonOverride2 |
|
||||
| calls.rb:428:9:428:44 | ... | calls.rb:420:1:434:3 | SingletonOverride2 |
|
||||
| calls.rb:428:9:428:44 | call to puts | calls.rb:420:1:434:3 | SingletonOverride2 |
|
||||
| calls.rb:428:9:428:44 | self | calls.rb:420:1:434:3 | SingletonOverride2 |
|
||||
| calls.rb:428:14:428:44 | "SingletonOverride2#singleton2" | calls.rb:420:1:434:3 | SingletonOverride2 |
|
||||
| calls.rb:428:15:428:43 | SingletonOverride2#singleton2 | calls.rb:420:1:434:3 | SingletonOverride2 |
|
||||
| calls.rb:431:5:433:7 | instance1 | calls.rb:420:1:434:3 | SingletonOverride2 |
|
||||
| calls.rb:432:9:432:43 | ... | calls.rb:420:1:434:3 | SingletonOverride2 |
|
||||
| calls.rb:432:9:432:43 | call to puts | calls.rb:420:1:434:3 | SingletonOverride2 |
|
||||
| calls.rb:432:9:432:43 | self | calls.rb:420:1:434:3 | SingletonOverride2 |
|
||||
| calls.rb:432:14:432:43 | "SingletonOverride2#instance1" | calls.rb:420:1:434:3 | SingletonOverride2 |
|
||||
@@ -1276,6 +1336,7 @@ enclosingModule
|
||||
| calls.rb:442:17:442:17 | 0 | calls.rb:441:1:469:3 | ConditionalInstanceMethods |
|
||||
| calls.rb:442:19:445:11 | then ... | calls.rb:441:1:469:3 | ConditionalInstanceMethods |
|
||||
| calls.rb:443:9:445:11 | m1 | calls.rb:441:1:469:3 | ConditionalInstanceMethods |
|
||||
| calls.rb:444:13:444:48 | ... | calls.rb:441:1:469:3 | ConditionalInstanceMethods |
|
||||
| calls.rb:444:13:444:48 | call to puts | calls.rb:441:1:469:3 | ConditionalInstanceMethods |
|
||||
| calls.rb:444:13:444:48 | self | calls.rb:441:1:469:3 | ConditionalInstanceMethods |
|
||||
| calls.rb:444:18:444:48 | "ConditionalInstanceMethods#m1" | calls.rb:441:1:469:3 | ConditionalInstanceMethods |
|
||||
@@ -1283,14 +1344,17 @@ enclosingModule
|
||||
| calls.rb:448:5:460:7 | m2 | calls.rb:441:1:469:3 | ConditionalInstanceMethods |
|
||||
| calls.rb:449:9:449:44 | call to puts | calls.rb:441:1:469:3 | ConditionalInstanceMethods |
|
||||
| calls.rb:449:9:449:44 | self | calls.rb:441:1:469:3 | ConditionalInstanceMethods |
|
||||
| calls.rb:449:9:459:10 | ... | calls.rb:441:1:469:3 | ConditionalInstanceMethods |
|
||||
| calls.rb:449:14:449:44 | "ConditionalInstanceMethods#m2" | calls.rb:441:1:469:3 | ConditionalInstanceMethods |
|
||||
| calls.rb:449:15:449:43 | ConditionalInstanceMethods#m2 | calls.rb:441:1:469:3 | ConditionalInstanceMethods |
|
||||
| calls.rb:451:9:457:11 | m3 | calls.rb:441:1:469:3 | ConditionalInstanceMethods |
|
||||
| calls.rb:452:13:452:48 | call to puts | calls.rb:441:1:469:3 | ConditionalInstanceMethods |
|
||||
| calls.rb:452:13:452:48 | self | calls.rb:441:1:469:3 | ConditionalInstanceMethods |
|
||||
| calls.rb:452:13:456:15 | ... | calls.rb:441:1:469:3 | ConditionalInstanceMethods |
|
||||
| calls.rb:452:18:452:48 | "ConditionalInstanceMethods#m3" | calls.rb:441:1:469:3 | ConditionalInstanceMethods |
|
||||
| calls.rb:452:19:452:47 | ConditionalInstanceMethods#m3 | calls.rb:441:1:469:3 | ConditionalInstanceMethods |
|
||||
| calls.rb:454:13:456:15 | m4 | calls.rb:441:1:469:3 | ConditionalInstanceMethods |
|
||||
| calls.rb:455:17:455:52 | ... | calls.rb:441:1:469:3 | ConditionalInstanceMethods |
|
||||
| calls.rb:455:17:455:52 | call to puts | calls.rb:441:1:469:3 | ConditionalInstanceMethods |
|
||||
| calls.rb:455:17:455:52 | self | calls.rb:441:1:469:3 | ConditionalInstanceMethods |
|
||||
| calls.rb:455:22:455:52 | "ConditionalInstanceMethods#m4" | calls.rb:441:1:469:3 | ConditionalInstanceMethods |
|
||||
@@ -1308,7 +1372,9 @@ enclosingModule
|
||||
| calls.rb:463:9:467:15 | call to new | calls.rb:441:1:469:3 | ConditionalInstanceMethods |
|
||||
| calls.rb:463:9:467:18 | call to m5 | calls.rb:441:1:469:3 | ConditionalInstanceMethods |
|
||||
| calls.rb:463:19:467:11 | do ... end | calls.rb:441:1:469:3 | ConditionalInstanceMethods |
|
||||
| calls.rb:464:13:466:15 | ... | calls.rb:441:1:469:3 | ConditionalInstanceMethods |
|
||||
| calls.rb:464:13:466:15 | m5 | calls.rb:441:1:469:3 | ConditionalInstanceMethods |
|
||||
| calls.rb:465:17:465:40 | ... | calls.rb:441:1:469:3 | ConditionalInstanceMethods |
|
||||
| calls.rb:465:17:465:40 | call to puts | calls.rb:441:1:469:3 | ConditionalInstanceMethods |
|
||||
| calls.rb:465:17:465:40 | self | calls.rb:441:1:469:3 | ConditionalInstanceMethods |
|
||||
| calls.rb:465:22:465:40 | "AnonymousClass#m5" | calls.rb:441:1:469:3 | ConditionalInstanceMethods |
|
||||
@@ -1340,11 +1406,14 @@ enclosingModule
|
||||
| calls.rb:479:5:479:11 | [...] | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:479:5:479:11 | call to [] | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:479:5:483:7 | call to each | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:479:5:495:7 | ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:479:6:479:6 | 0 | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:479:8:479:8 | 1 | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:479:10:479:10 | 2 | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:479:18:483:7 | do ... end | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:480:9:482:11 | ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:480:9:482:11 | foo | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:481:13:481:22 | ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:481:13:481:22 | call to puts | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:481:13:481:22 | self | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:481:18:481:22 | "foo" | calls.rb:1:1:667:52 | calls.rb |
|
||||
@@ -1354,7 +1423,9 @@ enclosingModule
|
||||
| calls.rb:485:5:489:11 | call to new | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:485:5:489:15 | call to bar | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:485:15:489:7 | do ... end | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:486:9:488:11 | ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:486:9:488:11 | bar | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:487:13:487:22 | ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:487:13:487:22 | call to puts | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:487:13:487:22 | self | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:487:18:487:22 | "bar" | calls.rb:1:1:667:52 | calls.rb |
|
||||
@@ -1369,6 +1440,7 @@ enclosingModule
|
||||
| calls.rb:491:18:495:7 | do ... end | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:491:22:491:22 | i | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:491:22:491:22 | i | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:492:9:494:11 | ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:492:9:494:11 | call to define_method | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:492:9:494:11 | self | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:492:23:492:32 | "baz_#{...}" | calls.rb:1:1:667:52 | calls.rb |
|
||||
@@ -1376,6 +1448,7 @@ enclosingModule
|
||||
| calls.rb:492:28:492:31 | #{...} | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:492:30:492:30 | i | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:492:35:494:11 | do ... end | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:493:13:493:27 | ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:493:13:493:27 | call to puts | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:493:13:493:27 | self | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:493:18:493:27 | "baz_#{...}" | calls.rb:1:1:667:52 | calls.rb |
|
||||
@@ -1399,6 +1472,7 @@ enclosingModule
|
||||
| calls.rb:502:1:502:33 | call to baz_2 | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:504:1:510:3 | ExtendSingletonMethod | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:505:5:507:7 | singleton | calls.rb:504:1:510:3 | ExtendSingletonMethod |
|
||||
| calls.rb:506:9:506:46 | ... | calls.rb:504:1:510:3 | ExtendSingletonMethod |
|
||||
| calls.rb:506:9:506:46 | call to puts | calls.rb:504:1:510:3 | ExtendSingletonMethod |
|
||||
| calls.rb:506:9:506:46 | self | calls.rb:504:1:510:3 | ExtendSingletonMethod |
|
||||
| calls.rb:506:14:506:46 | "ExtendSingletonMethod#singleton" | calls.rb:504:1:510:3 | ExtendSingletonMethod |
|
||||
@@ -1435,6 +1509,7 @@ enclosingModule
|
||||
| calls.rb:534:5:536:7 | call to protected | calls.rb:533:1:537:3 | ProtectedMethodInModule |
|
||||
| calls.rb:534:5:536:7 | self | calls.rb:533:1:537:3 | ProtectedMethodInModule |
|
||||
| calls.rb:534:15:536:7 | foo | calls.rb:533:1:537:3 | ProtectedMethodInModule |
|
||||
| calls.rb:535:9:535:42 | ... | calls.rb:533:1:537:3 | ProtectedMethodInModule |
|
||||
| calls.rb:535:9:535:42 | call to puts | calls.rb:533:1:537:3 | ProtectedMethodInModule |
|
||||
| calls.rb:535:9:535:42 | self | calls.rb:533:1:537:3 | ProtectedMethodInModule |
|
||||
| calls.rb:535:14:535:42 | "ProtectedMethodInModule#foo" | calls.rb:533:1:537:3 | ProtectedMethodInModule |
|
||||
@@ -1446,6 +1521,7 @@ enclosingModule
|
||||
| calls.rb:542:5:544:7 | call to protected | calls.rb:539:1:552:3 | ProtectedMethods |
|
||||
| calls.rb:542:5:544:7 | self | calls.rb:539:1:552:3 | ProtectedMethods |
|
||||
| calls.rb:542:15:544:7 | bar | calls.rb:539:1:552:3 | ProtectedMethods |
|
||||
| calls.rb:543:9:543:35 | ... | calls.rb:539:1:552:3 | ProtectedMethods |
|
||||
| calls.rb:543:9:543:35 | call to puts | calls.rb:539:1:552:3 | ProtectedMethods |
|
||||
| calls.rb:543:9:543:35 | self | calls.rb:539:1:552:3 | ProtectedMethods |
|
||||
| calls.rb:543:14:543:35 | "ProtectedMethods#bar" | calls.rb:539:1:552:3 | ProtectedMethods |
|
||||
@@ -1453,6 +1529,7 @@ enclosingModule
|
||||
| calls.rb:546:5:551:7 | baz | calls.rb:539:1:552:3 | ProtectedMethods |
|
||||
| calls.rb:547:9:547:11 | call to foo | calls.rb:539:1:552:3 | ProtectedMethods |
|
||||
| calls.rb:547:9:547:11 | self | calls.rb:539:1:552:3 | ProtectedMethods |
|
||||
| calls.rb:547:9:550:32 | ... | calls.rb:539:1:552:3 | ProtectedMethods |
|
||||
| calls.rb:548:9:548:11 | call to bar | calls.rb:539:1:552:3 | ProtectedMethods |
|
||||
| calls.rb:548:9:548:11 | self | calls.rb:539:1:552:3 | ProtectedMethods |
|
||||
| calls.rb:549:9:549:24 | ProtectedMethods | calls.rb:539:1:552:3 | ProtectedMethods |
|
||||
@@ -1475,6 +1552,7 @@ enclosingModule
|
||||
| calls.rb:559:5:562:7 | baz | calls.rb:558:1:563:3 | ProtectedMethodsSub |
|
||||
| calls.rb:560:9:560:11 | call to foo | calls.rb:558:1:563:3 | ProtectedMethodsSub |
|
||||
| calls.rb:560:9:560:11 | self | calls.rb:558:1:563:3 | ProtectedMethodsSub |
|
||||
| calls.rb:560:9:561:35 | ... | calls.rb:558:1:563:3 | ProtectedMethodsSub |
|
||||
| calls.rb:561:9:561:27 | ProtectedMethodsSub | calls.rb:558:1:563:3 | ProtectedMethodsSub |
|
||||
| calls.rb:561:9:561:31 | call to new | calls.rb:558:1:563:3 | ProtectedMethodsSub |
|
||||
| calls.rb:561:9:561:35 | call to foo | calls.rb:558:1:563:3 | ProtectedMethodsSub |
|
||||
@@ -1497,6 +1575,7 @@ enclosingModule
|
||||
| calls.rb:569:17:569:17 | c | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:569:17:569:17 | c | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:569:20:569:20 | c | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:569:20:569:24 | ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:569:20:569:24 | call to baz | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:570:1:570:13 | Array | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:570:1:570:13 | [...] | calls.rb:1:1:667:52 | calls.rb |
|
||||
@@ -1512,6 +1591,7 @@ enclosingModule
|
||||
| calls.rb:570:23:570:23 | s | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:570:23:570:23 | s | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:570:26:570:26 | s | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:570:26:570:37 | ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:570:26:570:37 | call to capitalize | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:572:1:575:3 | SingletonUpCall_Base | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:573:5:574:7 | singleton | calls.rb:572:1:575:3 | SingletonUpCall_Base |
|
||||
@@ -1526,6 +1606,7 @@ enclosingModule
|
||||
| calls.rb:579:9:579:12 | self | calls.rb:576:1:583:3 | SingletonUpCall_Sub |
|
||||
| calls.rb:580:9:580:17 | call to singleton | calls.rb:576:1:583:3 | SingletonUpCall_Sub |
|
||||
| calls.rb:580:9:580:17 | self | calls.rb:576:1:583:3 | SingletonUpCall_Sub |
|
||||
| calls.rb:580:9:581:35 | ... | calls.rb:576:1:583:3 | SingletonUpCall_Sub |
|
||||
| calls.rb:581:9:581:18 | call to singleton2 | calls.rb:576:1:583:3 | SingletonUpCall_Sub |
|
||||
| calls.rb:581:9:581:18 | self | calls.rb:576:1:583:3 | SingletonUpCall_Sub |
|
||||
| calls.rb:584:1:589:3 | SingletonUpCall_SubSub | calls.rb:1:1:667:52 | calls.rb |
|
||||
@@ -1539,10 +1620,12 @@ enclosingModule
|
||||
| calls.rb:592:9:592:12 | self | calls.rb:591:1:602:3 | SingletonA |
|
||||
| calls.rb:595:5:597:7 | call_singleton1 | calls.rb:591:1:602:3 | SingletonA |
|
||||
| calls.rb:595:9:595:12 | self | calls.rb:591:1:602:3 | SingletonA |
|
||||
| calls.rb:596:9:596:18 | ... | calls.rb:591:1:602:3 | SingletonA |
|
||||
| calls.rb:596:9:596:18 | call to singleton1 | calls.rb:591:1:602:3 | SingletonA |
|
||||
| calls.rb:596:9:596:18 | self | calls.rb:591:1:602:3 | SingletonA |
|
||||
| calls.rb:599:5:601:7 | call_call_singleton1 | calls.rb:591:1:602:3 | SingletonA |
|
||||
| calls.rb:599:9:599:12 | self | calls.rb:591:1:602:3 | SingletonA |
|
||||
| calls.rb:600:9:600:23 | ... | calls.rb:591:1:602:3 | SingletonA |
|
||||
| calls.rb:600:9:600:23 | call to call_singleton1 | calls.rb:591:1:602:3 | SingletonA |
|
||||
| calls.rb:600:9:600:23 | self | calls.rb:591:1:602:3 | SingletonA |
|
||||
| calls.rb:604:1:611:3 | SingletonB | calls.rb:1:1:667:52 | calls.rb |
|
||||
@@ -1553,6 +1636,7 @@ enclosingModule
|
||||
| calls.rb:608:9:608:12 | self | calls.rb:604:1:611:3 | SingletonB |
|
||||
| calls.rb:609:9:609:18 | call to singleton1 | calls.rb:604:1:611:3 | SingletonB |
|
||||
| calls.rb:609:9:609:18 | self | calls.rb:604:1:611:3 | SingletonB |
|
||||
| calls.rb:609:9:609:105 | ... | calls.rb:604:1:611:3 | SingletonB |
|
||||
| calls.rb:613:1:620:3 | SingletonC | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:613:20:613:29 | SingletonA | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:614:5:615:7 | singleton1 | calls.rb:613:1:620:3 | SingletonC |
|
||||
@@ -1561,6 +1645,7 @@ enclosingModule
|
||||
| calls.rb:617:9:617:12 | self | calls.rb:613:1:620:3 | SingletonC |
|
||||
| calls.rb:618:9:618:18 | call to singleton1 | calls.rb:613:1:620:3 | SingletonC |
|
||||
| calls.rb:618:9:618:18 | self | calls.rb:613:1:620:3 | SingletonC |
|
||||
| calls.rb:618:9:618:105 | ... | calls.rb:613:1:620:3 | SingletonC |
|
||||
| calls.rb:622:1:622:10 | SingletonA | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:622:1:622:31 | call to call_call_singleton1 | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:623:1:623:10 | SingletonB | calls.rb:1:1:667:52 | calls.rb |
|
||||
@@ -1570,6 +1655,7 @@ enclosingModule
|
||||
| calls.rb:626:1:632:3 | Included | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:627:5:629:7 | foo | calls.rb:626:1:632:3 | Included |
|
||||
| calls.rb:628:9:628:12 | self | calls.rb:626:1:632:3 | Included |
|
||||
| calls.rb:628:9:628:16 | ... | calls.rb:626:1:632:3 | Included |
|
||||
| calls.rb:628:9:628:16 | call to bar | calls.rb:626:1:632:3 | Included |
|
||||
| calls.rb:630:5:631:7 | bar | calls.rb:626:1:632:3 | Included |
|
||||
| calls.rb:634:1:639:3 | IncludesIncluded | calls.rb:1:1:667:52 | calls.rb |
|
||||
@@ -1577,11 +1663,13 @@ enclosingModule
|
||||
| calls.rb:635:5:635:20 | self | calls.rb:634:1:639:3 | IncludesIncluded |
|
||||
| calls.rb:635:13:635:20 | Included | calls.rb:634:1:639:3 | IncludesIncluded |
|
||||
| calls.rb:636:5:638:7 | bar | calls.rb:634:1:639:3 | IncludesIncluded |
|
||||
| calls.rb:637:9:637:13 | ... | calls.rb:634:1:639:3 | IncludesIncluded |
|
||||
| calls.rb:637:9:637:13 | super call to bar | calls.rb:634:1:639:3 | IncludesIncluded |
|
||||
| calls.rb:641:1:645:3 | CustomNew1 | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:642:5:644:7 | new | calls.rb:641:1:645:3 | CustomNew1 |
|
||||
| calls.rb:642:9:642:12 | self | calls.rb:641:1:645:3 | CustomNew1 |
|
||||
| calls.rb:643:9:643:10 | C1 | calls.rb:641:1:645:3 | CustomNew1 |
|
||||
| calls.rb:643:9:643:14 | ... | calls.rb:641:1:645:3 | CustomNew1 |
|
||||
| calls.rb:643:9:643:14 | call to new | calls.rb:641:1:645:3 | CustomNew1 |
|
||||
| calls.rb:647:1:647:10 | CustomNew1 | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:647:1:647:14 | call to new | calls.rb:1:1:667:52 | calls.rb |
|
||||
@@ -1590,8 +1678,10 @@ enclosingModule
|
||||
| calls.rb:650:5:652:7 | new | calls.rb:649:1:657:3 | CustomNew2 |
|
||||
| calls.rb:650:9:650:12 | self | calls.rb:649:1:657:3 | CustomNew2 |
|
||||
| calls.rb:651:9:651:12 | self | calls.rb:649:1:657:3 | CustomNew2 |
|
||||
| calls.rb:651:9:651:21 | ... | calls.rb:649:1:657:3 | CustomNew2 |
|
||||
| calls.rb:651:9:651:21 | call to allocate | calls.rb:649:1:657:3 | CustomNew2 |
|
||||
| calls.rb:654:5:656:7 | instance | calls.rb:649:1:657:3 | CustomNew2 |
|
||||
| calls.rb:655:9:655:34 | ... | calls.rb:649:1:657:3 | CustomNew2 |
|
||||
| calls.rb:655:9:655:34 | call to puts | calls.rb:649:1:657:3 | CustomNew2 |
|
||||
| calls.rb:655:9:655:34 | self | calls.rb:649:1:657:3 | CustomNew2 |
|
||||
| calls.rb:655:14:655:34 | "CustomNew2#instance" | calls.rb:649:1:657:3 | CustomNew2 |
|
||||
@@ -1605,11 +1695,13 @@ enclosingModule
|
||||
| calls.rb:662:5:662:11 | Array | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:662:5:662:11 | [...] | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:662:5:662:11 | call to [] | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:662:5:664:7 | ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:662:5:664:7 | call to each | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:662:6:662:6 | 0 | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:662:8:662:8 | 1 | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:662:10:662:10 | 2 | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:662:18:664:7 | do ... end | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:663:9:663:9 | ... | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:663:9:663:9 | x | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:667:1:667:26 | ( ... ) | calls.rb:1:1:667:52 | calls.rb |
|
||||
| calls.rb:667:1:667:35 | call to instance | calls.rb:1:1:667:52 | calls.rb |
|
||||
@@ -1621,6 +1713,7 @@ enclosingModule
|
||||
| element_reference.rb:2:5:4:7 | [] | element_reference.rb:1:1:5:3 | ClassWithElementRef |
|
||||
| element_reference.rb:2:12:2:12 | x | element_reference.rb:1:1:5:3 | ClassWithElementRef |
|
||||
| element_reference.rb:2:12:2:12 | x | element_reference.rb:1:1:5:3 | ClassWithElementRef |
|
||||
| element_reference.rb:3:9:3:19 | ... | element_reference.rb:1:1:5:3 | ClassWithElementRef |
|
||||
| element_reference.rb:3:9:3:19 | yield ... | element_reference.rb:1:1:5:3 | ClassWithElementRef |
|
||||
| element_reference.rb:3:15:3:15 | x | element_reference.rb:1:1:5:3 | ClassWithElementRef |
|
||||
| element_reference.rb:3:15:3:19 | ... + ... | element_reference.rb:1:1:5:3 | ClassWithElementRef |
|
||||
@@ -1635,6 +1728,7 @@ enclosingModule
|
||||
| element_reference.rb:9:6:9:19 | { ... } | element_reference.rb:1:1:13:4 | element_reference.rb |
|
||||
| element_reference.rb:9:9:9:9 | x | element_reference.rb:1:1:13:4 | element_reference.rb |
|
||||
| element_reference.rb:9:9:9:9 | x | element_reference.rb:1:1:13:4 | element_reference.rb |
|
||||
| element_reference.rb:9:12:9:17 | ... | element_reference.rb:1:1:13:4 | element_reference.rb |
|
||||
| element_reference.rb:9:12:9:17 | call to puts | element_reference.rb:1:1:13:4 | element_reference.rb |
|
||||
| element_reference.rb:9:12:9:17 | self | element_reference.rb:1:1:13:4 | element_reference.rb |
|
||||
| element_reference.rb:9:17:9:17 | x | element_reference.rb:1:1:13:4 | element_reference.rb |
|
||||
@@ -1644,15 +1738,18 @@ enclosingModule
|
||||
| element_reference.rb:11:6:13:3 | do ... end | element_reference.rb:1:1:13:4 | element_reference.rb |
|
||||
| element_reference.rb:11:10:11:10 | x | element_reference.rb:1:1:13:4 | element_reference.rb |
|
||||
| element_reference.rb:11:10:11:10 | x | element_reference.rb:1:1:13:4 | element_reference.rb |
|
||||
| element_reference.rb:12:5:12:10 | ... | element_reference.rb:1:1:13:4 | element_reference.rb |
|
||||
| element_reference.rb:12:5:12:10 | call to puts | element_reference.rb:1:1:13:4 | element_reference.rb |
|
||||
| element_reference.rb:12:5:12:10 | self | element_reference.rb:1:1:13:4 | element_reference.rb |
|
||||
| element_reference.rb:12:10:12:10 | x | element_reference.rb:1:1:13:4 | element_reference.rb |
|
||||
| hello.rb:1:1:8:3 | EnglishWords | hello.rb:1:1:22:3 | hello.rb |
|
||||
| hello.rb:2:5:4:7 | hello | hello.rb:1:1:8:3 | EnglishWords |
|
||||
| hello.rb:3:9:3:22 | ... | hello.rb:1:1:8:3 | EnglishWords |
|
||||
| hello.rb:3:9:3:22 | return | hello.rb:1:1:8:3 | EnglishWords |
|
||||
| hello.rb:3:16:3:22 | "hello" | hello.rb:1:1:8:3 | EnglishWords |
|
||||
| hello.rb:3:17:3:21 | hello | hello.rb:1:1:8:3 | EnglishWords |
|
||||
| hello.rb:5:5:7:7 | world | hello.rb:1:1:8:3 | EnglishWords |
|
||||
| hello.rb:6:9:6:22 | ... | hello.rb:1:1:8:3 | EnglishWords |
|
||||
| hello.rb:6:9:6:22 | return | hello.rb:1:1:8:3 | EnglishWords |
|
||||
| hello.rb:6:16:6:22 | "world" | hello.rb:1:1:8:3 | EnglishWords |
|
||||
| hello.rb:6:17:6:21 | world | hello.rb:1:1:8:3 | EnglishWords |
|
||||
@@ -1661,12 +1758,14 @@ enclosingModule
|
||||
| hello.rb:12:5:12:24 | self | hello.rb:11:1:16:3 | Greeting |
|
||||
| hello.rb:12:13:12:24 | EnglishWords | hello.rb:11:1:16:3 | Greeting |
|
||||
| hello.rb:13:5:15:7 | message | hello.rb:11:1:16:3 | Greeting |
|
||||
| hello.rb:14:9:14:20 | ... | hello.rb:11:1:16:3 | Greeting |
|
||||
| hello.rb:14:9:14:20 | return | hello.rb:11:1:16:3 | Greeting |
|
||||
| hello.rb:14:16:14:20 | call to hello | hello.rb:11:1:16:3 | Greeting |
|
||||
| hello.rb:14:16:14:20 | self | hello.rb:11:1:16:3 | Greeting |
|
||||
| hello.rb:18:1:22:3 | HelloWorld | hello.rb:1:1:22:3 | hello.rb |
|
||||
| hello.rb:18:20:18:27 | Greeting | hello.rb:1:1:22:3 | hello.rb |
|
||||
| hello.rb:19:5:21:7 | message | hello.rb:18:1:22:3 | HelloWorld |
|
||||
| hello.rb:20:9:20:40 | ... | hello.rb:18:1:22:3 | HelloWorld |
|
||||
| hello.rb:20:9:20:40 | return | hello.rb:18:1:22:3 | HelloWorld |
|
||||
| hello.rb:20:16:20:20 | super call to message | hello.rb:18:1:22:3 | HelloWorld |
|
||||
| hello.rb:20:16:20:26 | ... + ... | hello.rb:18:1:22:3 | HelloWorld |
|
||||
@@ -1684,12 +1783,14 @@ enclosingModule
|
||||
| instance_fields.rb:3:9:5:11 | create | instance_fields.rb:2:5:9:7 | class << ... |
|
||||
| instance_fields.rb:4:13:4:18 | @field | instance_fields.rb:2:5:9:7 | class << ... |
|
||||
| instance_fields.rb:4:13:4:18 | self | instance_fields.rb:2:5:9:7 | class << ... |
|
||||
| instance_fields.rb:4:13:4:35 | ... | instance_fields.rb:2:5:9:7 | class << ... |
|
||||
| instance_fields.rb:4:13:4:35 | ... = ... | instance_fields.rb:2:5:9:7 | class << ... |
|
||||
| instance_fields.rb:4:22:4:31 | A_target | instance_fields.rb:2:5:9:7 | class << ... |
|
||||
| instance_fields.rb:4:22:4:35 | call to new | instance_fields.rb:2:5:9:7 | class << ... |
|
||||
| instance_fields.rb:6:9:8:11 | use | instance_fields.rb:2:5:9:7 | class << ... |
|
||||
| instance_fields.rb:7:13:7:18 | @field | instance_fields.rb:2:5:9:7 | class << ... |
|
||||
| instance_fields.rb:7:13:7:18 | self | instance_fields.rb:2:5:9:7 | class << ... |
|
||||
| instance_fields.rb:7:13:7:25 | ... | instance_fields.rb:2:5:9:7 | class << ... |
|
||||
| instance_fields.rb:7:13:7:25 | call to target | instance_fields.rb:2:5:9:7 | class << ... |
|
||||
| instance_fields.rb:11:1:14:3 | A_target | instance_fields.rb:1:1:29:4 | instance_fields.rb |
|
||||
| instance_fields.rb:12:5:13:7 | target | instance_fields.rb:11:1:14:3 | A_target |
|
||||
@@ -1699,12 +1800,14 @@ enclosingModule
|
||||
| instance_fields.rb:18:9:20:11 | create | instance_fields.rb:17:5:24:7 | class << ... |
|
||||
| instance_fields.rb:19:13:19:18 | @field | instance_fields.rb:17:5:24:7 | class << ... |
|
||||
| instance_fields.rb:19:13:19:18 | self | instance_fields.rb:17:5:24:7 | class << ... |
|
||||
| instance_fields.rb:19:13:19:35 | ... | instance_fields.rb:17:5:24:7 | class << ... |
|
||||
| instance_fields.rb:19:13:19:35 | ... = ... | instance_fields.rb:17:5:24:7 | class << ... |
|
||||
| instance_fields.rb:19:22:19:31 | B_target | instance_fields.rb:17:5:24:7 | class << ... |
|
||||
| instance_fields.rb:19:22:19:35 | call to new | instance_fields.rb:17:5:24:7 | class << ... |
|
||||
| instance_fields.rb:21:9:23:11 | use | instance_fields.rb:17:5:24:7 | class << ... |
|
||||
| instance_fields.rb:22:13:22:18 | @field | instance_fields.rb:17:5:24:7 | class << ... |
|
||||
| instance_fields.rb:22:13:22:18 | self | instance_fields.rb:17:5:24:7 | class << ... |
|
||||
| instance_fields.rb:22:13:22:25 | ... | instance_fields.rb:17:5:24:7 | class << ... |
|
||||
| instance_fields.rb:22:13:22:25 | call to target | instance_fields.rb:17:5:24:7 | class << ... |
|
||||
| instance_fields.rb:26:1:29:3 | B_target | instance_fields.rb:1:1:29:4 | instance_fields.rb |
|
||||
| instance_fields.rb:27:5:28:7 | target | instance_fields.rb:26:1:29:3 | B_target |
|
||||
@@ -1784,6 +1887,7 @@ enclosingModule
|
||||
| modules.rb:90:3:90:8 | Object | modules.rb:88:1:93:3 | IncludeTest |
|
||||
| modules.rb:90:3:90:38 | call to module_eval | modules.rb:88:1:93:3 | IncludeTest |
|
||||
| modules.rb:90:22:90:38 | { ... } | modules.rb:88:1:93:3 | IncludeTest |
|
||||
| modules.rb:90:24:90:36 | ... | modules.rb:88:1:93:3 | IncludeTest |
|
||||
| modules.rb:90:24:90:36 | call to prepend | modules.rb:88:1:93:3 | IncludeTest |
|
||||
| modules.rb:90:24:90:36 | self | modules.rb:88:1:93:3 | IncludeTest |
|
||||
| modules.rb:90:32:90:36 | Other | modules.rb:88:1:93:3 | IncludeTest |
|
||||
@@ -1908,6 +2012,7 @@ enclosingModule
|
||||
| private.rb:83:3:85:5 | call to private | private.rb:82:1:94:3 | PrivateOverride1 |
|
||||
| private.rb:83:3:85:5 | self | private.rb:82:1:94:3 | PrivateOverride1 |
|
||||
| private.rb:83:11:85:5 | m1 | private.rb:82:1:94:3 | PrivateOverride1 |
|
||||
| private.rb:84:7:84:32 | ... | private.rb:82:1:94:3 | PrivateOverride1 |
|
||||
| private.rb:84:7:84:32 | call to puts | private.rb:82:1:94:3 | PrivateOverride1 |
|
||||
| private.rb:84:7:84:32 | self | private.rb:82:1:94:3 | PrivateOverride1 |
|
||||
| private.rb:84:12:84:32 | "PrivateOverride1#m1" | private.rb:82:1:94:3 | PrivateOverride1 |
|
||||
@@ -1915,11 +2020,13 @@ enclosingModule
|
||||
| private.rb:87:3:89:5 | call to private | private.rb:82:1:94:3 | PrivateOverride1 |
|
||||
| private.rb:87:3:89:5 | self | private.rb:82:1:94:3 | PrivateOverride1 |
|
||||
| private.rb:87:11:89:5 | m2 | private.rb:82:1:94:3 | PrivateOverride1 |
|
||||
| private.rb:88:7:88:32 | ... | private.rb:82:1:94:3 | PrivateOverride1 |
|
||||
| private.rb:88:7:88:32 | call to puts | private.rb:82:1:94:3 | PrivateOverride1 |
|
||||
| private.rb:88:7:88:32 | self | private.rb:82:1:94:3 | PrivateOverride1 |
|
||||
| private.rb:88:12:88:32 | "PrivateOverride1#m2" | private.rb:82:1:94:3 | PrivateOverride1 |
|
||||
| private.rb:88:13:88:31 | PrivateOverride1#m2 | private.rb:82:1:94:3 | PrivateOverride1 |
|
||||
| private.rb:91:3:93:5 | call_m1 | private.rb:82:1:94:3 | PrivateOverride1 |
|
||||
| private.rb:92:7:92:8 | ... | private.rb:82:1:94:3 | PrivateOverride1 |
|
||||
| private.rb:92:7:92:8 | call to m1 | private.rb:82:1:94:3 | PrivateOverride1 |
|
||||
| private.rb:92:7:92:8 | self | private.rb:82:1:94:3 | PrivateOverride1 |
|
||||
| private.rb:96:1:102:3 | PrivateOverride2 | private.rb:1:1:105:40 | private.rb |
|
||||
@@ -1929,6 +2036,7 @@ enclosingModule
|
||||
| private.rb:97:11:101:5 | m1 | private.rb:96:1:102:3 | PrivateOverride2 |
|
||||
| private.rb:98:7:98:32 | call to puts | private.rb:96:1:102:3 | PrivateOverride2 |
|
||||
| private.rb:98:7:98:32 | self | private.rb:96:1:102:3 | PrivateOverride2 |
|
||||
| private.rb:98:7:100:45 | ... | private.rb:96:1:102:3 | PrivateOverride2 |
|
||||
| private.rb:98:12:98:32 | "PrivateOverride2#m1" | private.rb:96:1:102:3 | PrivateOverride2 |
|
||||
| private.rb:98:13:98:31 | PrivateOverride2#m1 | private.rb:96:1:102:3 | PrivateOverride2 |
|
||||
| private.rb:99:7:99:8 | call to m2 | private.rb:96:1:102:3 | PrivateOverride2 |
|
||||
@@ -1950,8 +2058,10 @@ enclosingModule
|
||||
| toplevel_self_singleton.rb:8:1:16:3 | self | toplevel_self_singleton.rb:1:1:34:4 | toplevel_self_singleton.rb |
|
||||
| toplevel_self_singleton.rb:8:14:16:3 | do ... end | toplevel_self_singleton.rb:1:1:34:4 | toplevel_self_singleton.rb |
|
||||
| toplevel_self_singleton.rb:9:5:11:7 | method_in_block | toplevel_self_singleton.rb:1:1:34:4 | toplevel_self_singleton.rb |
|
||||
| toplevel_self_singleton.rb:9:5:15:7 | ... | toplevel_self_singleton.rb:1:1:34:4 | toplevel_self_singleton.rb |
|
||||
| toplevel_self_singleton.rb:10:9:10:27 | call to ab_singleton_method | toplevel_self_singleton.rb:1:1:34:4 | toplevel_self_singleton.rb |
|
||||
| toplevel_self_singleton.rb:10:9:10:27 | self | toplevel_self_singleton.rb:1:1:34:4 | toplevel_self_singleton.rb |
|
||||
| toplevel_self_singleton.rb:10:9:10:60 | ... | toplevel_self_singleton.rb:1:1:34:4 | toplevel_self_singleton.rb |
|
||||
| toplevel_self_singleton.rb:12:5:12:7 | obj | toplevel_self_singleton.rb:1:1:34:4 | toplevel_self_singleton.rb |
|
||||
| toplevel_self_singleton.rb:12:5:12:12 | ... = ... | toplevel_self_singleton.rb:1:1:34:4 | toplevel_self_singleton.rb |
|
||||
| toplevel_self_singleton.rb:12:9:12:12 | self | toplevel_self_singleton.rb:1:1:34:4 | toplevel_self_singleton.rb |
|
||||
@@ -1959,6 +2069,7 @@ enclosingModule
|
||||
| toplevel_self_singleton.rb:13:9:13:11 | obj | toplevel_self_singleton.rb:1:1:34:4 | toplevel_self_singleton.rb |
|
||||
| toplevel_self_singleton.rb:14:9:14:27 | call to ab_singleton_method | toplevel_self_singleton.rb:1:1:34:4 | toplevel_self_singleton.rb |
|
||||
| toplevel_self_singleton.rb:14:9:14:27 | self | toplevel_self_singleton.rb:1:1:34:4 | toplevel_self_singleton.rb |
|
||||
| toplevel_self_singleton.rb:14:9:14:60 | ... | toplevel_self_singleton.rb:1:1:34:4 | toplevel_self_singleton.rb |
|
||||
| toplevel_self_singleton.rb:18:1:18:8 | MyStruct | toplevel_self_singleton.rb:1:1:34:4 | toplevel_self_singleton.rb |
|
||||
| toplevel_self_singleton.rb:18:1:22:1 | ... = ... | toplevel_self_singleton.rb:1:1:34:4 | toplevel_self_singleton.rb |
|
||||
| toplevel_self_singleton.rb:18:12:18:17 | Struct | toplevel_self_singleton.rb:1:1:34:4 | toplevel_self_singleton.rb |
|
||||
@@ -1968,10 +2079,12 @@ enclosingModule
|
||||
| toplevel_self_singleton.rb:18:29:18:32 | :bar | toplevel_self_singleton.rb:1:1:34:4 | toplevel_self_singleton.rb |
|
||||
| toplevel_self_singleton.rb:18:29:18:32 | bar | toplevel_self_singleton.rb:1:1:34:4 | toplevel_self_singleton.rb |
|
||||
| toplevel_self_singleton.rb:18:35:22:1 | { ... } | toplevel_self_singleton.rb:1:1:34:4 | toplevel_self_singleton.rb |
|
||||
| toplevel_self_singleton.rb:19:5:21:7 | ... | toplevel_self_singleton.rb:1:1:34:4 | toplevel_self_singleton.rb |
|
||||
| toplevel_self_singleton.rb:19:5:21:7 | method_in_struct | toplevel_self_singleton.rb:1:1:34:4 | toplevel_self_singleton.rb |
|
||||
| toplevel_self_singleton.rb:19:9:19:12 | self | toplevel_self_singleton.rb:1:1:34:4 | toplevel_self_singleton.rb |
|
||||
| toplevel_self_singleton.rb:20:9:20:27 | call to ab_singleton_method | toplevel_self_singleton.rb:1:1:34:4 | toplevel_self_singleton.rb |
|
||||
| toplevel_self_singleton.rb:20:9:20:27 | self | toplevel_self_singleton.rb:1:1:34:4 | toplevel_self_singleton.rb |
|
||||
| toplevel_self_singleton.rb:20:9:20:60 | ... | toplevel_self_singleton.rb:1:1:34:4 | toplevel_self_singleton.rb |
|
||||
| toplevel_self_singleton.rb:24:1:34:3 | Good | toplevel_self_singleton.rb:1:1:34:4 | toplevel_self_singleton.rb |
|
||||
| toplevel_self_singleton.rb:25:5:33:7 | class << ... | toplevel_self_singleton.rb:24:1:34:3 | Good |
|
||||
| toplevel_self_singleton.rb:25:14:25:17 | self | toplevel_self_singleton.rb:24:1:34:3 | Good |
|
||||
@@ -1979,6 +2092,7 @@ enclosingModule
|
||||
| toplevel_self_singleton.rb:29:9:32:11 | call_you | toplevel_self_singleton.rb:25:5:33:7 | class << ... |
|
||||
| toplevel_self_singleton.rb:30:13:30:19 | call to call_me | toplevel_self_singleton.rb:25:5:33:7 | class << ... |
|
||||
| toplevel_self_singleton.rb:30:13:30:19 | self | toplevel_self_singleton.rb:25:5:33:7 | class << ... |
|
||||
| toplevel_self_singleton.rb:30:13:31:20 | ... | toplevel_self_singleton.rb:25:5:33:7 | class << ... |
|
||||
| toplevel_self_singleton.rb:31:13:31:20 | call to call_you | toplevel_self_singleton.rb:25:5:33:7 | class << ... |
|
||||
| toplevel_self_singleton.rb:31:13:31:20 | self | toplevel_self_singleton.rb:25:5:33:7 | class << ... |
|
||||
| unresolved_subclass.rb:1:1:2:3 | ResolvableBaseClass | unresolved_subclass.rb:1:1:22:4 | unresolved_subclass.rb |
|
||||
|
||||
Reference in New Issue
Block a user