MCPcopy Index your code
hub / github.com/facebookincubator/InjKit

github.com/facebookincubator/InjKit @main

Chat with this repo
repository ↗ · DeepWiki ↗ · + Follow
1,300 symbols 3,869 edges 135 files 0 documented · 0%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

InjKit is a framework for bytecode manipulation.

InjKit is a framework for bytecode manipulation based on ASM library. It has plugin-like architecture and allows to process each class and method. The plugins or injectors can add extra bytecode like try...catch... blocks, calls to logger etc based on java annotations or name of the class or method. It can be easily integrated as part of build workflow as Gradle Plugin or via CLI.

License

InjKit is MIT-licensed.

Extension points exported contracts — how you extend this code

ModuleConfigurationWriterFactory (Interface)
(no doc) [11 implementers]
TransformCore/src/test/java/com/facebook/ads/injkit/TransformationEnvironment.java
TestInterface (Interface)
(no doc) [19 implementers]
TransformCore/src/test/java/com/facebook/ads/injkit/benchmark/BenchmarkAbstractMethodsTest.java
ToCall (Interface)
(no doc) [13 implementers]
TransformCore/src/test/java/com/facebook/ads/injkit/threadcheck/ThreadCheckTest.java
InjectorFactory (Interface)
(no doc) [11 implementers]
TransformCore/src/main/java/com/facebook/ads/injkit/InjectorFactory.java
Injector (Interface)
(no doc) [8 implementers]
TransformCore/src/main/java/com/facebook/ads/injkit/Injector.java

Core symbols most depended-on inside this repo

getName
called by 114
TransformCore/src/main/java/com/facebook/ads/injkit/UniqueSetting.java
loadClass
called by 64
GradlePlugin/src/main/java/com/facebook/ads/injkit/gradle/LocalClassLoader.java
get
called by 56
TransformCore/src/main/java/com/facebook/ads/injkit/benchmark/BenchmarkInjector.java
update
called by 42
TransformCore/src/main/java/com/facebook/ads/injkit/model/Model.java
done
called by 41
TransformCore/src/test/java/com/facebook/ads/injkit/TransformationEnvironment.java
process
called by 28
TransformCore/src/main/java/com/facebook/ads/injkit/Injector.java
build
called by 25
TransformCore/src/main/java/com/facebook/ads/injkit/AnnotationProcessorConfigurationBuilder.java
setConfigurationFile
called by 24
TransformCore/src/main/java/com/facebook/ads/injkit/AnnotationProcessorConfigurationBuilder.java

Shape

Method 997
Class 267
Interface 30
Enum 6

Languages

Java99%
Kotlin1%

Modules by API surface

TransformCore/src/test/java/com/facebook/ads/injkit/benchmark/BenchmarkReceiverMethodsIncorrectTest.java80 symbols
TransformCore/src/test/java/com/facebook/ads/injkit/crashshield/CrashShieldConfigurationTest.java56 symbols
TransformCore/src/test/java/com/facebook/ads/injkit/threadcheck/ThreadCheckTest.java41 symbols
TransformCore/src/test/java/com/facebook/ads/injkit/threadcheck/ThreadCheckIncompatibleDefinitionsTest.java39 symbols
TransformCore/src/test/java/com/facebook/ads/injkit/crashshield/safe_components/SafeViewGroup.java32 symbols
TransformCore/src/test/java/com/facebook/ads/injkit/ReflectUtilsMethodMapTest.java25 symbols
TransformCore/src/test/java/com/facebook/ads/injkit/crashshield/CrashShieldParametersInConfigurationFileTest.java23 symbols
TransformCore/src/test/java/com/facebook/ads/injkit/threadcheck/ThreadCheckInterfaceAnnotationInheritanceTest.java21 symbols
TransformCore/src/test/java/com/facebook/ads/injkit/TransformationEnvironment.java21 symbols
TransformCore/src/test/java/com/facebook/ads/injkit/crashshield/CrashShieldViewListenersInjectionTest.java20 symbols
TransformCore/src/test/java/com/facebook/ads/injkit/crashshield/CrashShieldInvocationTest.java20 symbols
TransformCore/src/test/java/com/facebook/ads/injkit/benchmark/BenchmarkInheritanceTest.java20 symbols

For agents

$ claude mcp add InjKit \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact