mirror of
https://github.com/github/codeql.git
synced 2025-12-17 17:23:36 +01:00
40 lines
2.7 KiB
Ruby
40 lines
2.7 KiB
Ruby
Something.foo.withCallback do |a, b| #$ source=Member[Something].Method[foo].ReturnValue
|
|
a.something #$ source=Member[Something].Method[foo].ReturnValue.Method[withCallback].Argument[block].Argument[0].Method[something].ReturnValue
|
|
b.somethingElse #$ source=Member[Something].Method[foo].ReturnValue.Method[withCallback].Argument[block].Argument[1].Method[somethingElse].ReturnValue
|
|
end #$ source=Member[Something].Method[foo].ReturnValue.Method[withCallback].ReturnValue
|
|
|
|
Something.withNamedArg do |a:, b: nil| #$ source=Member[Something]
|
|
a.something #$ source=Member[Something].Method[withNamedArg].Argument[block].Parameter[a:].Method[something].ReturnValue
|
|
b.somethingElse #$ source=Member[Something].Method[withNamedArg].Argument[block].Parameter[b:].Method[somethingElse].ReturnValue
|
|
end #$ source=Member[Something].Method[withNamedArg].ReturnValue
|
|
|
|
Something.withLambda ->(a, b) { #$ source=Member[Something]
|
|
a.something #$ source=Member[Something].Method[withLambda].Argument[0].Parameter[0].Method[something].ReturnValue
|
|
b.something #$ source=Member[Something].Method[withLambda].Argument[0].Parameter[1].Method[something].ReturnValue
|
|
} #$ source=Member[Something].Method[withLambda].ReturnValue
|
|
|
|
Something.namedCallback( #$ source=Member[Something]
|
|
onEvent: ->(a, b) {
|
|
a.something #$ source=Member[Something].Method[namedCallback].Argument[onEvent:].Parameter[0].Method[something].ReturnValue
|
|
b.something #$ source=Member[Something].Method[namedCallback].Argument[onEvent:].Parameter[1].Method[something].ReturnValue
|
|
}
|
|
) #$ source=Member[Something].Method[namedCallback].ReturnValue
|
|
|
|
Something.nestedCall1 do |a| #$ source=Member[Something]
|
|
a.nestedCall2 do |b:| #$ reachableFromSource=Member[Something].Method[nestedCall1].Argument[block].Parameter[0]
|
|
b.something #$ source=Member[Something].Method[nestedCall1].Argument[block].Parameter[0].Method[nestedCall2].Argument[block].Parameter[b:].Method[something].ReturnValue
|
|
end #$ source=Member[Something].Method[nestedCall1].Argument[block].Parameter[0].Method[nestedCall2].ReturnValue
|
|
end #$ source=Member[Something].Method[nestedCall1].ReturnValue
|
|
|
|
def getCallback()
|
|
->(x) {
|
|
x.something #$ source=Member[Something].Method[indirectCallback].Argument[0].Parameter[0].Method[something].ReturnValue
|
|
}
|
|
end
|
|
Something.indirectCallback(getCallback()) #$ source=Member[Something].Method[indirectCallback].ReturnValue
|
|
|
|
Something.withMixed do |a, *args, b| #$ source=Member[Something]
|
|
a.something #$ source=Member[Something].Method[withMixed].Argument[block].Parameter[0].Method[something].ReturnValue
|
|
# b.something # not currently handled correctly
|
|
end #$ source=Member[Something].Method[withMixed].ReturnValue
|