summaryrefslogtreecommitdiff
path: root/platform/script-debugger/protocol/schema-reader-generator/src/org/jetbrains/jsonProtocol/ItemDescriptor.java
blob: 26dbd72d058ebd0a7e7ae575e4a2a5a22204e7b0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
package org.jetbrains.jsonProtocol;

import org.chromium.protocolReader.JsonOptionalField;

import java.util.List;

public interface ItemDescriptor {
  String description();

  String type();

  List<String> getEnum();

  ProtocolMetaModel.ArrayItemType items();

  interface Named extends Referenceable {
    String name();

    @JsonOptionalField
    String shortName();

    boolean optional();
  }

  interface Referenceable extends ItemDescriptor {
    String ref();
  }

  interface Type extends ItemDescriptor {
    List<ProtocolMetaModel.ObjectProperty> properties();
  }
}