diff --git a/samples_index.json b/samples_index.json new file mode 100644 index 0000000..41cd56e --- /dev/null +++ b/samples_index.json @@ -0,0 +1,284 @@ +{ + "base_url": "https://raw.githubusercontent.com/java/playground-snippets/refs/heads/samples-menu", + "menu_items": [ + { + "category": "Hello World", + "source_uri": "java25/HelloWorld", + "badge": { + "text": "Java 25", + "type": "java-version" + } + }, + { + "category": "Records", + "subcategories": [ + { + "category": "Simple record", + "source_uri": "java21/Record_1" + }, + { + "category": "Composing", + "source_uri": "java21/Record_2" + }, + { + "category": "Composing", + "source_uri": "java21/Record_2" + }, + { + "category": "Method overriding", + "source_uri": "java21/Record_3" + } + ] + }, + { + "category": "Unnamed Pattern", + "subcategories": [ + { + "category": "Consumer with Unnamed Pattern", + "source_uri": "java22/Unamed_Pattern_1" + }, + { + "category": "Function with Unnamed Pattern", + "source_uri": "java22/Unamed_Pattern_2" + }, + { + "category": "BiFunction with Unnamed Pattern", + "source_uri": "java22/Unamed_Pattern_3" + }, + { + "category": "Pattern Matching with Unnamed Pattern", + "source_uri": "java22/Unamed_Pattern_4" + } + ] + }, + { + "category": "Gatherers", + "subcategories": [ + { + "category": "Simple", + "subcategories": [ + { + "category": "Filtering", + "source_uri": "java24/Gatherers_A1" + }, + { + "category": "Mapping", + "source_uri": "java24/Gatherers_A2" + }, + { + "category": "Flatmapping", + "source_uri": "java24/Gatherers_A3" + } + ] + }, + { + "category": "Intermediate", + "subcategories": [ + { + "category": "Map filter", + "source_uri": "java24/Gatherers_B1" + }, + { + "category": "Limit", + "source_uri": "java24/Gatherers_B3" + }, + { + "category": "Distinct", + "source_uri": "java24/Gatherers_B5" + }, + { + "category": "Sort Distinct", + "source_uri": "java24/Gatherers_B9" + }, + { + "category": "Distinct Ignore Case", + "source_uri": "java24/Gatherers_B11" + }, + { + "category": "Custom Equal", + "source_uri": "java24/Gatherers_B15" + }, + { + "category": "Custom Equal Collecting", + "source_uri": "java24/Gatherers_B17" + } + ] + }, + { + "category": "Combining", + "subcategories": [ + { + "category": "Zipping", + "source_uri": "java24/Gatherers_D1" + }, + { + "category": "Zipping with Default Value", + "source_uri": "java24/Gatherers_D2" + }, + { + "category": "Combining", + "source_uri": "java24/Gatherers_D3" + }, + { + "category": "Combining with Default Value", + "source_uri": "java24/Gatherers_D4" + } + ] + } + ] + }, + { + "category": "Switch and Sealed Types", + "subcategories": [ + { + "category": "Switch and Sealed Types", + "source_uri": "java22/Switch_on_Sealled_Types_1" + }, + { + "category": "... with Record Pattern", + "source_uri": "java22/Switch_on_Sealled_Types_2" + }, + { + "category": "... with Nested Record Patterns", + "source_uri": "java22/Switch_on_Sealled_Types_3" + }, + { + "category": "... with Unnamed Patterns", + "source_uri": "java22/Switch_on_Sealled_Types_4" + }, + { + "category": "... with Guarded Patterns", + "source_uri": "java22/Switch_on_Sealled_Types_5" + } + ] + }, + { + "category": "Primitive Type Pattern", + "badge": { + "text": "Java 25", + "type": "java-version" + }, + "subcategories": [ + { + "category": "... for instanceOf", + "source_uri": "java23/Primitive_Type_Pattern_1" + }, + { + "category": "... for switch", + "source_uri": "java23/Primitive_Type_Pattern_2" + }, + { + "category": "Narrowing Integer Number Primitive Pattern", + "source_uri": "java23/Primitive_Type_Pattern_3" + }, + { + "category": "Integer Number to Floating Point Number Primitive Pattern", + "source_uri": "java23/Primitive_Type_Pattern_5" + }, + { + "category": "Floating Point Number to Integer Number Primitive Pattern", + "source_uri": "java23/Primitive_Type_Pattern_6" + }, + { + "category": "Double Number to Integer Number Primitive Pattern", + "source_uri": "java23/Primitive_Type_Pattern_7" + }, + { + "category": "Boolean Primitive Pattern", + "source_uri": "java23/Primitive_Type_Pattern_8" + }, + { + "category": "Double Primitive Pattern", + "source_uri": "java23/Primitive_Type_Pattern_9" + }, + { + "category": "JSON Analysis", + "source_uri": "java25/PrimitiveTypePatterns_10" + } + ] + }, + { + "category": "Stable Values", + "badge": { + "text": "Java 25", + "type": "java-version" + }, + "subcategories": [ + { + "category": "Static Initializers", + "source_uri": "java25/StableValues_1" + }, + { + "category": "Enum Initializers", + "source_uri": "java25/StableValues_2" + }, + { + "category": "... with Suppliers", + "source_uri": "java25/StableValues_3" + }, + { + "category": "... with Factories", + "source_uri": "java25/StableValues_4" + }, + { + "category": "... as List", + "source_uri": "java25/StableValues_5" + }, + { + "category": "... as Map", + "source_uri": "java25/StableValues_6" + }, + { + "category": "... as Function", + "source_uri": "java25/StableValues_7" + }, + { + "category": "... as IntFunction", + "source_uri": "java25/StableValues_8" + } + ] + }, + { + "category": "Miscellaneous", + "subcategories": [ + { + "category": "Statement before super", + "source_uri": "java22/StatementsBeforeSuper_1" + }, + { + "category": "Streams", + "subcategories": [ + { + "category": "Filtering", + "source_uri": "java21/Stream_1" + }, + { + "category": "Stream to List", + "source_uri": "java21/Stream_2" + }, + { + "category": "Text Block to Stream", + "source_uri": "java21/Stream_3" + } + ] + }, + { + "category": "Setting Scoped Values", + "source_uri": "java25/ScopedValues_1", + "badge": { + "text": "Java 25", + "type": "java-version" + } + }, + { + "category": "Flexible Constructor Body", + "source_uri": "java25/FlexibleConstructorBodies_2", + "badge": { + "text": "Java 25", + "type": "java-version" + } + } + ] + } + ] +}