rbtr-lang-java 2026.7.0.dev0__py3-none-any.whl → 2026.9.0.dev0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- rbtr_lang_java/tests/__snapshots__/test_samples/test_extraction_matches_snapshot.json +83 -56
- rbtr_lang_java/tests/test_extraction.py +1 -1
- rbtr_lang_java/tests/test_samples.py +1 -1
- rbtr_lang_java-2026.9.0.dev0.dist-info/METADATA +64 -0
- {rbtr_lang_java-2026.7.0.dev0.dist-info → rbtr_lang_java-2026.9.0.dev0.dist-info}/RECORD +8 -7
- {rbtr_lang_java-2026.7.0.dev0.dist-info → rbtr_lang_java-2026.9.0.dev0.dist-info}/WHEEL +1 -1
- rbtr_lang_java-2026.9.0.dev0.dist-info/licenses/LICENSE +21 -0
- rbtr_lang_java-2026.7.0.dev0.dist-info/METADATA +0 -8
- {rbtr_lang_java-2026.7.0.dev0.dist-info → rbtr_lang_java-2026.9.0.dev0.dist-info}/entry_points.txt +0 -0
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
[
|
|
2
2
|
{
|
|
3
|
-
"id": "fc9fe882b78bd247",
|
|
4
3
|
"blob_sha": "sha1",
|
|
5
4
|
"file_path": "com/example/format/Formatter.java",
|
|
6
5
|
"kind": "class",
|
|
7
6
|
"name": "Formatter",
|
|
8
7
|
"scope": "",
|
|
9
8
|
"language": "java",
|
|
9
|
+
"file_language": "java",
|
|
10
10
|
"content": "/** Formats a greeting for a recipient. */\npublic interface Formatter {\n String format(String name);\n}",
|
|
11
11
|
"line_start": 3,
|
|
12
12
|
"line_end": 6,
|
|
@@ -15,16 +15,17 @@
|
|
|
15
15
|
"names": "",
|
|
16
16
|
"dots": "",
|
|
17
17
|
"language_hint": ""
|
|
18
|
-
}
|
|
18
|
+
},
|
|
19
|
+
"id": "1042a39a74c1e22e"
|
|
19
20
|
},
|
|
20
21
|
{
|
|
21
|
-
"id": "831f35e91399ffb5",
|
|
22
22
|
"blob_sha": "sha1",
|
|
23
23
|
"file_path": "com/example/format/Formatter.java",
|
|
24
24
|
"kind": "method",
|
|
25
25
|
"name": "format",
|
|
26
26
|
"scope": "Formatter",
|
|
27
27
|
"language": "java",
|
|
28
|
+
"file_language": "java",
|
|
28
29
|
"content": "String format(String name);",
|
|
29
30
|
"line_start": 5,
|
|
30
31
|
"line_end": 5,
|
|
@@ -33,16 +34,17 @@
|
|
|
33
34
|
"names": "",
|
|
34
35
|
"dots": "",
|
|
35
36
|
"language_hint": ""
|
|
36
|
-
}
|
|
37
|
+
},
|
|
38
|
+
"id": "f73b8d47257b539f"
|
|
37
39
|
},
|
|
38
40
|
{
|
|
39
|
-
"id": "71ecb390e7b4b164",
|
|
40
41
|
"blob_sha": "sha1",
|
|
41
42
|
"file_path": "java.java",
|
|
42
43
|
"kind": "comment",
|
|
43
|
-
"name": "
|
|
44
|
+
"name": "",
|
|
44
45
|
"scope": "",
|
|
45
46
|
"language": "java",
|
|
47
|
+
"file_language": "java",
|
|
46
48
|
"content": "// Greeter — format greetings for named recipients.\n//\n// The Java plugin extracts classes, methods (including constructors),\n// fields (as variables), and imports. Interfaces, enums, and records are\n// captured as classes, and their members scope to them.",
|
|
47
49
|
"line_start": 1,
|
|
48
50
|
"line_end": 5,
|
|
@@ -51,16 +53,17 @@
|
|
|
51
53
|
"names": "",
|
|
52
54
|
"dots": "",
|
|
53
55
|
"language_hint": ""
|
|
54
|
-
}
|
|
56
|
+
},
|
|
57
|
+
"id": "e7d9d8a75815b54d"
|
|
55
58
|
},
|
|
56
59
|
{
|
|
57
|
-
"id": "496c3cb5ac915731",
|
|
58
60
|
"blob_sha": "sha1",
|
|
59
61
|
"file_path": "java.java",
|
|
60
62
|
"kind": "import",
|
|
61
63
|
"name": "import java.util.List;",
|
|
62
64
|
"scope": "",
|
|
63
65
|
"language": "java",
|
|
66
|
+
"file_language": "java",
|
|
64
67
|
"content": "import java.util.List;",
|
|
65
68
|
"line_start": 8,
|
|
66
69
|
"line_end": 8,
|
|
@@ -69,16 +72,17 @@
|
|
|
69
72
|
"names": "",
|
|
70
73
|
"dots": "",
|
|
71
74
|
"language_hint": ""
|
|
72
|
-
}
|
|
75
|
+
},
|
|
76
|
+
"id": "eadc551681bc3286"
|
|
73
77
|
},
|
|
74
78
|
{
|
|
75
|
-
"id": "1417b33862ecea43",
|
|
76
79
|
"blob_sha": "sha1",
|
|
77
80
|
"file_path": "java.java",
|
|
78
81
|
"kind": "import",
|
|
79
82
|
"name": "import static java.util.Collections.emptyList;",
|
|
80
83
|
"scope": "",
|
|
81
84
|
"language": "java",
|
|
85
|
+
"file_language": "java",
|
|
82
86
|
"content": "import static java.util.Collections.emptyList;",
|
|
83
87
|
"line_start": 9,
|
|
84
88
|
"line_end": 9,
|
|
@@ -87,16 +91,17 @@
|
|
|
87
91
|
"names": "",
|
|
88
92
|
"dots": "",
|
|
89
93
|
"language_hint": ""
|
|
90
|
-
}
|
|
94
|
+
},
|
|
95
|
+
"id": "c7bddad8451ce047"
|
|
91
96
|
},
|
|
92
97
|
{
|
|
93
|
-
"id": "d73548d67a52b30e",
|
|
94
98
|
"blob_sha": "sha1",
|
|
95
99
|
"file_path": "java.java",
|
|
96
100
|
"kind": "import",
|
|
97
101
|
"name": "import com.example.format.Formatter;",
|
|
98
102
|
"scope": "",
|
|
99
103
|
"language": "java",
|
|
104
|
+
"file_language": "java",
|
|
100
105
|
"content": "import com.example.format.Formatter;",
|
|
101
106
|
"line_start": 11,
|
|
102
107
|
"line_end": 11,
|
|
@@ -105,16 +110,17 @@
|
|
|
105
110
|
"names": "",
|
|
106
111
|
"dots": "",
|
|
107
112
|
"language_hint": ""
|
|
108
|
-
}
|
|
113
|
+
},
|
|
114
|
+
"id": "20cf2e5e85898af8"
|
|
109
115
|
},
|
|
110
116
|
{
|
|
111
|
-
"id": "680cae9e7fb01702",
|
|
112
117
|
"blob_sha": "sha1",
|
|
113
118
|
"file_path": "java.java",
|
|
114
119
|
"kind": "comment",
|
|
115
|
-
"name": "
|
|
120
|
+
"name": "",
|
|
116
121
|
"scope": "",
|
|
117
122
|
"language": "java",
|
|
123
|
+
"file_language": "java",
|
|
118
124
|
"content": "// Standalone note at top level, separated by blank lines.\n// Second line of the same block.",
|
|
119
125
|
"line_start": 13,
|
|
120
126
|
"line_end": 14,
|
|
@@ -123,16 +129,17 @@
|
|
|
123
129
|
"names": "",
|
|
124
130
|
"dots": "",
|
|
125
131
|
"language_hint": ""
|
|
126
|
-
}
|
|
132
|
+
},
|
|
133
|
+
"id": "f5c277ce425d34f7"
|
|
127
134
|
},
|
|
128
135
|
{
|
|
129
|
-
"id": "9f228cd99b8a722d",
|
|
130
136
|
"blob_sha": "sha1",
|
|
131
137
|
"file_path": "java.java",
|
|
132
138
|
"kind": "class",
|
|
133
139
|
"name": "Greeter",
|
|
134
140
|
"scope": "",
|
|
135
141
|
"language": "java",
|
|
142
|
+
"file_language": "java",
|
|
136
143
|
"content": "/** Formats greetings with a configurable prefix. */\npublic class Greeter implements Formatter {\n private final String prefix;\n\n public Greeter(String prefix) {\n this.prefix = prefix;\n }\n\n /** Format a greeting (implements the Formatter contract). */\n @Override\n public String format(String name) {\n return greet(name);\n }\n\n /** Greet a single recipient. */\n public String greet(String name) {\n return prefix + \", \" + name;\n }\n\n /** Build a greeter with the default prefix. */\n public static Greeter withDefault() {\n return new Greeter(\"Hello\");\n }\n\n /** A nested formatter. */\n static class Formatter {\n String format(String name) {\n return name.trim();\n }\n }\n}",
|
|
137
144
|
"line_start": 16,
|
|
138
145
|
"line_end": 46,
|
|
@@ -141,16 +148,17 @@
|
|
|
141
148
|
"names": "",
|
|
142
149
|
"dots": "",
|
|
143
150
|
"language_hint": ""
|
|
144
|
-
}
|
|
151
|
+
},
|
|
152
|
+
"id": "8da316e5eb6c3e32"
|
|
145
153
|
},
|
|
146
154
|
{
|
|
147
|
-
"id": "bb5b1c7efa17f676",
|
|
148
155
|
"blob_sha": "sha1",
|
|
149
156
|
"file_path": "java.java",
|
|
150
157
|
"kind": "variable",
|
|
151
158
|
"name": "prefix",
|
|
152
159
|
"scope": "Greeter",
|
|
153
160
|
"language": "java",
|
|
161
|
+
"file_language": "java",
|
|
154
162
|
"content": "private final String prefix;",
|
|
155
163
|
"line_start": 18,
|
|
156
164
|
"line_end": 18,
|
|
@@ -159,16 +167,17 @@
|
|
|
159
167
|
"names": "",
|
|
160
168
|
"dots": "",
|
|
161
169
|
"language_hint": ""
|
|
162
|
-
}
|
|
170
|
+
},
|
|
171
|
+
"id": "1a31f30617bea2f3"
|
|
163
172
|
},
|
|
164
173
|
{
|
|
165
|
-
"id": "b175d0c46cc7da3a",
|
|
166
174
|
"blob_sha": "sha1",
|
|
167
175
|
"file_path": "java.java",
|
|
168
176
|
"kind": "method",
|
|
169
177
|
"name": "Greeter",
|
|
170
178
|
"scope": "Greeter",
|
|
171
179
|
"language": "java",
|
|
180
|
+
"file_language": "java",
|
|
172
181
|
"content": "public Greeter(String prefix) {\n this.prefix = prefix;\n }",
|
|
173
182
|
"line_start": 20,
|
|
174
183
|
"line_end": 22,
|
|
@@ -177,16 +186,17 @@
|
|
|
177
186
|
"names": "",
|
|
178
187
|
"dots": "",
|
|
179
188
|
"language_hint": ""
|
|
180
|
-
}
|
|
189
|
+
},
|
|
190
|
+
"id": "2c51226d212213eb"
|
|
181
191
|
},
|
|
182
192
|
{
|
|
183
|
-
"id": "4bc1972beed0cee5",
|
|
184
193
|
"blob_sha": "sha1",
|
|
185
194
|
"file_path": "java.java",
|
|
186
195
|
"kind": "method",
|
|
187
196
|
"name": "format",
|
|
188
197
|
"scope": "Greeter",
|
|
189
198
|
"language": "java",
|
|
199
|
+
"file_language": "java",
|
|
190
200
|
"content": "/** Format a greeting (implements the Formatter contract). */\n @Override\n public String format(String name) {\n return greet(name);\n }",
|
|
191
201
|
"line_start": 24,
|
|
192
202
|
"line_end": 28,
|
|
@@ -195,16 +205,17 @@
|
|
|
195
205
|
"names": "",
|
|
196
206
|
"dots": "",
|
|
197
207
|
"language_hint": ""
|
|
198
|
-
}
|
|
208
|
+
},
|
|
209
|
+
"id": "f26d4cf5b42153ff"
|
|
199
210
|
},
|
|
200
211
|
{
|
|
201
|
-
"id": "d158fb2366c6f729",
|
|
202
212
|
"blob_sha": "sha1",
|
|
203
213
|
"file_path": "java.java",
|
|
204
214
|
"kind": "method",
|
|
205
215
|
"name": "greet",
|
|
206
216
|
"scope": "Greeter",
|
|
207
217
|
"language": "java",
|
|
218
|
+
"file_language": "java",
|
|
208
219
|
"content": "/** Greet a single recipient. */\n public String greet(String name) {\n return prefix + \", \" + name;\n }",
|
|
209
220
|
"line_start": 30,
|
|
210
221
|
"line_end": 33,
|
|
@@ -213,16 +224,17 @@
|
|
|
213
224
|
"names": "",
|
|
214
225
|
"dots": "",
|
|
215
226
|
"language_hint": ""
|
|
216
|
-
}
|
|
227
|
+
},
|
|
228
|
+
"id": "cc89b8a157413499"
|
|
217
229
|
},
|
|
218
230
|
{
|
|
219
|
-
"id": "a430bbda70683d09",
|
|
220
231
|
"blob_sha": "sha1",
|
|
221
232
|
"file_path": "java.java",
|
|
222
233
|
"kind": "method",
|
|
223
234
|
"name": "withDefault",
|
|
224
235
|
"scope": "Greeter",
|
|
225
236
|
"language": "java",
|
|
237
|
+
"file_language": "java",
|
|
226
238
|
"content": "/** Build a greeter with the default prefix. */\n public static Greeter withDefault() {\n return new Greeter(\"Hello\");\n }",
|
|
227
239
|
"line_start": 35,
|
|
228
240
|
"line_end": 38,
|
|
@@ -231,16 +243,17 @@
|
|
|
231
243
|
"names": "",
|
|
232
244
|
"dots": "",
|
|
233
245
|
"language_hint": ""
|
|
234
|
-
}
|
|
246
|
+
},
|
|
247
|
+
"id": "1cf7780d5901929b"
|
|
235
248
|
},
|
|
236
249
|
{
|
|
237
|
-
"id": "aa7f19020a4a06cf",
|
|
238
250
|
"blob_sha": "sha1",
|
|
239
251
|
"file_path": "java.java",
|
|
240
252
|
"kind": "class",
|
|
241
253
|
"name": "Formatter",
|
|
242
254
|
"scope": "Greeter",
|
|
243
255
|
"language": "java",
|
|
256
|
+
"file_language": "java",
|
|
244
257
|
"content": "/** A nested formatter. */\n static class Formatter {\n String format(String name) {\n return name.trim();\n }\n }",
|
|
245
258
|
"line_start": 40,
|
|
246
259
|
"line_end": 45,
|
|
@@ -249,16 +262,17 @@
|
|
|
249
262
|
"names": "",
|
|
250
263
|
"dots": "",
|
|
251
264
|
"language_hint": ""
|
|
252
|
-
}
|
|
265
|
+
},
|
|
266
|
+
"id": "79a5f136482114c3"
|
|
253
267
|
},
|
|
254
268
|
{
|
|
255
|
-
"id": "1345e44e8cd717a6",
|
|
256
269
|
"blob_sha": "sha1",
|
|
257
270
|
"file_path": "java.java",
|
|
258
271
|
"kind": "method",
|
|
259
272
|
"name": "format",
|
|
260
273
|
"scope": "Greeter::Formatter",
|
|
261
274
|
"language": "java",
|
|
275
|
+
"file_language": "java",
|
|
262
276
|
"content": "String format(String name) {\n return name.trim();\n }",
|
|
263
277
|
"line_start": 42,
|
|
264
278
|
"line_end": 44,
|
|
@@ -267,16 +281,17 @@
|
|
|
267
281
|
"names": "",
|
|
268
282
|
"dots": "",
|
|
269
283
|
"language_hint": ""
|
|
270
|
-
}
|
|
284
|
+
},
|
|
285
|
+
"id": "660baf6d1e903fd6"
|
|
271
286
|
},
|
|
272
287
|
{
|
|
273
|
-
"id": "877bfd5e977208c1",
|
|
274
288
|
"blob_sha": "sha1",
|
|
275
289
|
"file_path": "java.java",
|
|
276
290
|
"kind": "class",
|
|
277
291
|
"name": "Strategy",
|
|
278
292
|
"scope": "",
|
|
279
293
|
"language": "java",
|
|
294
|
+
"file_language": "java",
|
|
280
295
|
"content": "/** A greeting strategy contract. */\ninterface Strategy {\n String render(String name);\n}",
|
|
281
296
|
"line_start": 48,
|
|
282
297
|
"line_end": 51,
|
|
@@ -285,16 +300,17 @@
|
|
|
285
300
|
"names": "",
|
|
286
301
|
"dots": "",
|
|
287
302
|
"language_hint": ""
|
|
288
|
-
}
|
|
303
|
+
},
|
|
304
|
+
"id": "c4c8298171b390f3"
|
|
289
305
|
},
|
|
290
306
|
{
|
|
291
|
-
"id": "0b7ec1f5873ad261",
|
|
292
307
|
"blob_sha": "sha1",
|
|
293
308
|
"file_path": "java.java",
|
|
294
309
|
"kind": "method",
|
|
295
310
|
"name": "render",
|
|
296
311
|
"scope": "Strategy",
|
|
297
312
|
"language": "java",
|
|
313
|
+
"file_language": "java",
|
|
298
314
|
"content": "String render(String name);",
|
|
299
315
|
"line_start": 50,
|
|
300
316
|
"line_end": 50,
|
|
@@ -303,16 +319,17 @@
|
|
|
303
319
|
"names": "",
|
|
304
320
|
"dots": "",
|
|
305
321
|
"language_hint": ""
|
|
306
|
-
}
|
|
322
|
+
},
|
|
323
|
+
"id": "a12e8157d2a9d08e"
|
|
307
324
|
},
|
|
308
325
|
{
|
|
309
|
-
"id": "9fc1d873760c9177",
|
|
310
326
|
"blob_sha": "sha1",
|
|
311
327
|
"file_path": "java.java",
|
|
312
328
|
"kind": "class",
|
|
313
329
|
"name": "Tone",
|
|
314
330
|
"scope": "",
|
|
315
331
|
"language": "java",
|
|
332
|
+
"file_language": "java",
|
|
316
333
|
"content": "/** Supported greeting tones. */\nenum Tone {\n FORMAL,\n CASUAL;\n\n /** Human-readable label for this tone. */\n String label() {\n return name().toLowerCase();\n }\n}",
|
|
317
334
|
"line_start": 53,
|
|
318
335
|
"line_end": 62,
|
|
@@ -321,16 +338,17 @@
|
|
|
321
338
|
"names": "",
|
|
322
339
|
"dots": "",
|
|
323
340
|
"language_hint": ""
|
|
324
|
-
}
|
|
341
|
+
},
|
|
342
|
+
"id": "1e93eac2fc72939c"
|
|
325
343
|
},
|
|
326
344
|
{
|
|
327
|
-
"id": "be3519be22988025",
|
|
328
345
|
"blob_sha": "sha1",
|
|
329
346
|
"file_path": "java.java",
|
|
330
347
|
"kind": "variable",
|
|
331
348
|
"name": "FORMAL",
|
|
332
349
|
"scope": "Tone",
|
|
333
350
|
"language": "java",
|
|
351
|
+
"file_language": "java",
|
|
334
352
|
"content": "FORMAL",
|
|
335
353
|
"line_start": 55,
|
|
336
354
|
"line_end": 55,
|
|
@@ -339,16 +357,17 @@
|
|
|
339
357
|
"names": "",
|
|
340
358
|
"dots": "",
|
|
341
359
|
"language_hint": ""
|
|
342
|
-
}
|
|
360
|
+
},
|
|
361
|
+
"id": "98cb87f60c2adfd4"
|
|
343
362
|
},
|
|
344
363
|
{
|
|
345
|
-
"id": "1a5686337ef56a40",
|
|
346
364
|
"blob_sha": "sha1",
|
|
347
365
|
"file_path": "java.java",
|
|
348
366
|
"kind": "variable",
|
|
349
367
|
"name": "CASUAL",
|
|
350
368
|
"scope": "Tone",
|
|
351
369
|
"language": "java",
|
|
370
|
+
"file_language": "java",
|
|
352
371
|
"content": "CASUAL",
|
|
353
372
|
"line_start": 56,
|
|
354
373
|
"line_end": 56,
|
|
@@ -357,16 +376,17 @@
|
|
|
357
376
|
"names": "",
|
|
358
377
|
"dots": "",
|
|
359
378
|
"language_hint": ""
|
|
360
|
-
}
|
|
379
|
+
},
|
|
380
|
+
"id": "d743006765f0e9f9"
|
|
361
381
|
},
|
|
362
382
|
{
|
|
363
|
-
"id": "9d6647628805f6cd",
|
|
364
383
|
"blob_sha": "sha1",
|
|
365
384
|
"file_path": "java.java",
|
|
366
385
|
"kind": "method",
|
|
367
386
|
"name": "label",
|
|
368
387
|
"scope": "Tone",
|
|
369
388
|
"language": "java",
|
|
389
|
+
"file_language": "java",
|
|
370
390
|
"content": "/** Human-readable label for this tone. */\n String label() {\n return name().toLowerCase();\n }",
|
|
371
391
|
"line_start": 58,
|
|
372
392
|
"line_end": 61,
|
|
@@ -375,16 +395,17 @@
|
|
|
375
395
|
"names": "",
|
|
376
396
|
"dots": "",
|
|
377
397
|
"language_hint": ""
|
|
378
|
-
}
|
|
398
|
+
},
|
|
399
|
+
"id": "f45e3d2ade6c961f"
|
|
379
400
|
},
|
|
380
401
|
{
|
|
381
|
-
"id": "7f673931d7852ccf",
|
|
382
402
|
"blob_sha": "sha1",
|
|
383
403
|
"file_path": "java.java",
|
|
384
404
|
"kind": "class",
|
|
385
405
|
"name": "Recipient",
|
|
386
406
|
"scope": "",
|
|
387
407
|
"language": "java",
|
|
408
|
+
"file_language": "java",
|
|
388
409
|
"content": "/** An immutable named recipient. */\nrecord Recipient(String name, String locale) {\n /** Full display name including locale. */\n String display() {\n return name + \" (\" + locale + \")\";\n }\n}",
|
|
389
410
|
"line_start": 64,
|
|
390
411
|
"line_end": 70,
|
|
@@ -393,16 +414,17 @@
|
|
|
393
414
|
"names": "",
|
|
394
415
|
"dots": "",
|
|
395
416
|
"language_hint": ""
|
|
396
|
-
}
|
|
417
|
+
},
|
|
418
|
+
"id": "a0aaa3f04a553426"
|
|
397
419
|
},
|
|
398
420
|
{
|
|
399
|
-
"id": "47fb3098b5c5bbe0",
|
|
400
421
|
"blob_sha": "sha1",
|
|
401
422
|
"file_path": "java.java",
|
|
402
423
|
"kind": "variable",
|
|
403
424
|
"name": "name",
|
|
404
425
|
"scope": "Recipient",
|
|
405
426
|
"language": "java",
|
|
427
|
+
"file_language": "java",
|
|
406
428
|
"content": "String name",
|
|
407
429
|
"line_start": 65,
|
|
408
430
|
"line_end": 65,
|
|
@@ -411,16 +433,17 @@
|
|
|
411
433
|
"names": "",
|
|
412
434
|
"dots": "",
|
|
413
435
|
"language_hint": ""
|
|
414
|
-
}
|
|
436
|
+
},
|
|
437
|
+
"id": "9677fac6218c8a22"
|
|
415
438
|
},
|
|
416
439
|
{
|
|
417
|
-
"id": "e1c6599ad1ee4d57",
|
|
418
440
|
"blob_sha": "sha1",
|
|
419
441
|
"file_path": "java.java",
|
|
420
442
|
"kind": "variable",
|
|
421
443
|
"name": "locale",
|
|
422
444
|
"scope": "Recipient",
|
|
423
445
|
"language": "java",
|
|
446
|
+
"file_language": "java",
|
|
424
447
|
"content": "String locale",
|
|
425
448
|
"line_start": 65,
|
|
426
449
|
"line_end": 65,
|
|
@@ -429,16 +452,17 @@
|
|
|
429
452
|
"names": "",
|
|
430
453
|
"dots": "",
|
|
431
454
|
"language_hint": ""
|
|
432
|
-
}
|
|
455
|
+
},
|
|
456
|
+
"id": "b0c523d9cff8afe6"
|
|
433
457
|
},
|
|
434
458
|
{
|
|
435
|
-
"id": "e2ebf0a0194fd190",
|
|
436
459
|
"blob_sha": "sha1",
|
|
437
460
|
"file_path": "java.java",
|
|
438
461
|
"kind": "method",
|
|
439
462
|
"name": "display",
|
|
440
463
|
"scope": "Recipient",
|
|
441
464
|
"language": "java",
|
|
465
|
+
"file_language": "java",
|
|
442
466
|
"content": "/** Full display name including locale. */\n String display() {\n return name + \" (\" + locale + \")\";\n }",
|
|
443
467
|
"line_start": 66,
|
|
444
468
|
"line_end": 69,
|
|
@@ -447,16 +471,17 @@
|
|
|
447
471
|
"names": "",
|
|
448
472
|
"dots": "",
|
|
449
473
|
"language_hint": ""
|
|
450
|
-
}
|
|
474
|
+
},
|
|
475
|
+
"id": "7dd6ee9b962098ee"
|
|
451
476
|
},
|
|
452
477
|
{
|
|
453
|
-
"id": "3f07497ccd429eea",
|
|
454
478
|
"blob_sha": "sha1",
|
|
455
479
|
"file_path": "java.java",
|
|
456
480
|
"kind": "class",
|
|
457
481
|
"name": "Audited",
|
|
458
482
|
"scope": "",
|
|
459
483
|
"language": "java",
|
|
484
|
+
"file_language": "java",
|
|
460
485
|
"content": "/** Marks a greeter method as audited. */\n@interface Audited {\n String value();\n}",
|
|
461
486
|
"line_start": 72,
|
|
462
487
|
"line_end": 75,
|
|
@@ -465,16 +490,17 @@
|
|
|
465
490
|
"names": "",
|
|
466
491
|
"dots": "",
|
|
467
492
|
"language_hint": ""
|
|
468
|
-
}
|
|
493
|
+
},
|
|
494
|
+
"id": "f48db82561ed70ef"
|
|
469
495
|
},
|
|
470
496
|
{
|
|
471
|
-
"id": "8f7a02443382b322",
|
|
472
497
|
"blob_sha": "sha1",
|
|
473
498
|
"file_path": "java.java",
|
|
474
499
|
"kind": "method",
|
|
475
500
|
"name": "value",
|
|
476
501
|
"scope": "Audited",
|
|
477
502
|
"language": "java",
|
|
503
|
+
"file_language": "java",
|
|
478
504
|
"content": "String value();",
|
|
479
505
|
"line_start": 74,
|
|
480
506
|
"line_end": 74,
|
|
@@ -483,6 +509,7 @@
|
|
|
483
509
|
"names": "",
|
|
484
510
|
"dots": "",
|
|
485
511
|
"language_hint": ""
|
|
486
|
-
}
|
|
512
|
+
},
|
|
513
|
+
"id": "ba8ca0e94a46742e"
|
|
487
514
|
}
|
|
488
515
|
]
|
|
@@ -4,8 +4,8 @@ from __future__ import annotations
|
|
|
4
4
|
|
|
5
5
|
from pytest_cases import parametrize_with_cases
|
|
6
6
|
|
|
7
|
+
from rbtr.domain.models import ChunkKind, ImportMeta
|
|
7
8
|
from rbtr.git import FileEntry
|
|
8
|
-
from rbtr.index.models import ChunkKind, ImportMeta
|
|
9
9
|
from rbtr.languages.extract import extract_file
|
|
10
10
|
|
|
11
11
|
|
|
@@ -8,8 +8,8 @@ from typing import TYPE_CHECKING
|
|
|
8
8
|
import pytest
|
|
9
9
|
from tree_sitter import Parser
|
|
10
10
|
|
|
11
|
+
from rbtr.domain.models import Chunk, ChunkKind, Edge
|
|
11
12
|
from rbtr.git import FileEntry
|
|
12
|
-
from rbtr.index.models import Chunk, ChunkKind, Edge
|
|
13
13
|
from rbtr.languages.edges import build_resolution_map, infer_import_edges
|
|
14
14
|
from rbtr.languages.extract import extract_file
|
|
15
15
|
from rbtr.languages.manager import get_manager
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: rbtr-lang-java
|
|
3
|
+
Version: 2026.9.0.dev0
|
|
4
|
+
Summary: rbtr — Java language plugin
|
|
5
|
+
Keywords: code-search,code-index,tree-sitter,static-analysis,semantic-search,developer-tools,java
|
|
6
|
+
Author: Alejandro Giacometti
|
|
7
|
+
Author-email: Alejandro Giacometti <alejandro.giacometti@gmail.com>
|
|
8
|
+
License-Expression: MIT
|
|
9
|
+
License-File: LICENSE
|
|
10
|
+
Classifier: Development Status :: 4 - Beta
|
|
11
|
+
Classifier: Intended Audience :: Developers
|
|
12
|
+
Classifier: Programming Language :: Java
|
|
13
|
+
Classifier: Programming Language :: Python :: 3 :: Only
|
|
14
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
15
|
+
Classifier: Topic :: Software Development :: Libraries
|
|
16
|
+
Classifier: Topic :: Text Processing :: Indexing
|
|
17
|
+
Classifier: Typing :: Typed
|
|
18
|
+
Requires-Dist: rbtr==2026.9.0.dev0
|
|
19
|
+
Requires-Dist: tree-sitter-java
|
|
20
|
+
Requires-Python: >=3.13
|
|
21
|
+
Project-URL: Homepage, https://github.com/janrito/rbtr
|
|
22
|
+
Project-URL: Repository, https://github.com/janrito/rbtr
|
|
23
|
+
Project-URL: Documentation, https://github.com/janrito/rbtr/tree/main/packages/rbtr-lang-java#readme
|
|
24
|
+
Project-URL: Issues, https://github.com/janrito/rbtr/issues
|
|
25
|
+
Project-URL: Changelog, https://github.com/janrito/rbtr/releases
|
|
26
|
+
Description-Content-Type: text/markdown
|
|
27
|
+
|
|
28
|
+
# rbtr-lang-java
|
|
29
|
+
|
|
30
|
+
Java support for [rbtr]. Optional plugin — install with
|
|
31
|
+
`pip install rbtr[java]`.
|
|
32
|
+
|
|
33
|
+
[rbtr]: https://github.com/janrito/rbtr/tree/main/packages/rbtr#readme
|
|
34
|
+
|
|
35
|
+
## What it ingests
|
|
36
|
+
|
|
37
|
+
Java is class-only (no free functions), so extraction is class-centred:
|
|
38
|
+
|
|
39
|
+
- **Classes** — classes, interfaces, enums, records, annotations.
|
|
40
|
+
- **Methods** — methods and constructors, scoped to their type.
|
|
41
|
+
- **Variables** — fields (class members are data-scope, captured as
|
|
42
|
+
variables) and enum constants.
|
|
43
|
+
- **Imports** — `import` (and `import static`) declarations.
|
|
44
|
+
|
|
45
|
+
Leading Javadoc (`/** … */`) folds into the symbol's content.
|
|
46
|
+
|
|
47
|
+
## Chunks produced
|
|
48
|
+
|
|
49
|
+
```java
|
|
50
|
+
public class Formatter { // class "Formatter"
|
|
51
|
+
private int width; // variable "width", scope "Formatter"
|
|
52
|
+
Formatter(int w) { … } // method "Formatter", scope "Formatter"
|
|
53
|
+
String format(String s) { … } // method "format", scope "Formatter"
|
|
54
|
+
}
|
|
55
|
+
import java.util.List; // import, metadata {module: java.util.List}
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
## Embedded / injected chunks
|
|
59
|
+
|
|
60
|
+
None. Java does not embed other languages.
|
|
61
|
+
|
|
62
|
+
## Grammar & dependencies
|
|
63
|
+
|
|
64
|
+
Uses the `tree-sitter-java` grammar. No dependency on other language plugins.
|
|
@@ -4,15 +4,16 @@ rbtr_lang_java/plugin.py,sha256=zGIibd6FqhWWzXEMLIFrh-iksWwfAARp0n8IQn4Lg7Y,1604
|
|
|
4
4
|
rbtr_lang_java/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
5
5
|
rbtr_lang_java/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
6
6
|
rbtr_lang_java/tests/__snapshots__/test_samples/test_edges_match_snapshot.json,sha256=5KJM-lNVfq6Go6vl08c8-bR2BebL_SH0y2iGYDLSLt8,222
|
|
7
|
-
rbtr_lang_java/tests/__snapshots__/test_samples/test_extraction_matches_snapshot.json,sha256=
|
|
7
|
+
rbtr_lang_java/tests/__snapshots__/test_samples/test_extraction_matches_snapshot.json,sha256=L9m33wXX3vklPx7G0muqurVay2W9KSJOq5gsNYn5KFg,13462
|
|
8
8
|
rbtr_lang_java/tests/cases_docstrings.py,sha256=EtybMdvhrVx-c3eQqDieuSaNz2EIcrTLl9EUOTiRQYQ,2971
|
|
9
9
|
rbtr_lang_java/tests/cases_extraction.py,sha256=EWmf0tZ3AbAkRF6nXsw5_IPTUGkotqWS09BFs1aSkmU,5164
|
|
10
10
|
rbtr_lang_java/tests/samples/java/com/example/format/Formatter.java,sha256=54LpdddqFxN2M7Y3RY_pIDtXdaN_i5-3vvm8pPxDYQM,135
|
|
11
11
|
rbtr_lang_java/tests/samples/java/java.java,sha256=ZwGw2fjqUC33RuPJS2jBLabGYmiAt3AlaiP4gsBOOik,1823
|
|
12
12
|
rbtr_lang_java/tests/test_docstrings.py,sha256=oKBa0Ubvzxh_aiDMX2qvw3PV35sx46wfDBAFN-l6rbg,1752
|
|
13
|
-
rbtr_lang_java/tests/test_extraction.py,sha256=
|
|
14
|
-
rbtr_lang_java/tests/test_samples.py,sha256=
|
|
15
|
-
rbtr_lang_java-2026.
|
|
16
|
-
rbtr_lang_java-2026.
|
|
17
|
-
rbtr_lang_java-2026.
|
|
18
|
-
rbtr_lang_java-2026.
|
|
13
|
+
rbtr_lang_java/tests/test_extraction.py,sha256=egsN6AsPEuD_gdErwUm_A5qfReDvsg5rYUmp2jQf5EQ,2655
|
|
14
|
+
rbtr_lang_java/tests/test_samples.py,sha256=vlQGVkQ4aKmKc-_fzIYHMfOfRXt4HYwZpdW-wHbeXn8,2273
|
|
15
|
+
rbtr_lang_java-2026.9.0.dev0.dist-info/licenses/LICENSE,sha256=3LvNTMhogXUXkHsDvTWaXdtGd9C-uuoIVD1ey8w9ITs,1077
|
|
16
|
+
rbtr_lang_java-2026.9.0.dev0.dist-info/WHEEL,sha256=-i9oRNYVXXZJUIYl5zclLIg6onEb0NLibTX34uln84w,81
|
|
17
|
+
rbtr_lang_java-2026.9.0.dev0.dist-info/entry_points.txt,sha256=Uy4x3Y6jW3R6M_VV2bHXgcjs8GiGI-MAYu4wx9agXKg,52
|
|
18
|
+
rbtr_lang_java-2026.9.0.dev0.dist-info/METADATA,sha256=Ab3_mM5pl7rN-Pgv9I_rUidax1BgOz50rJa8cLyzlDw,2401
|
|
19
|
+
rbtr_lang_java-2026.9.0.dev0.dist-info/RECORD,,
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Alejandro Giacometti
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
{rbtr_lang_java-2026.7.0.dev0.dist-info → rbtr_lang_java-2026.9.0.dev0.dist-info}/entry_points.txt
RENAMED
|
File without changes
|