Module: Senko::Instructions

Defined in:
lib/senko/compiler/instruction.rb

Constant Summary collapse

TYPE_NULL =
0b0000001
TYPE_BOOLEAN =
0b0000010
TYPE_INTEGER =
0b0000100
TYPE_NUMBER =
0b0001100
TYPE_STRING =
0b0010000
TYPE_ARRAY =
0b0100000
TYPE_OBJECT =
0b1000000
TYPE_MAP =
{
  'null' => TYPE_NULL,
  'boolean' => TYPE_BOOLEAN,
  'integer' => TYPE_INTEGER,
  'number' => TYPE_NUMBER,
  'string' => TYPE_STRING,
  'array' => TYPE_ARRAY,
  'object' => TYPE_OBJECT
}.freeze
KEYWORDS =
{
  false_schema: 'false',
  type: 'type',
  enum: 'enum',
  const: 'const',
  multiple_of: 'multipleOf',
  maximum: 'maximum',
  minimum: 'minimum',
  max_length: 'maxLength',
  min_length: 'minLength',
  pattern: 'pattern',
  max_items: 'maxItems',
  min_items: 'minItems',
  unique_items: 'uniqueItems',
  prefix_items: 'prefixItems',
  items: 'items',
  contains: 'contains',
  max_properties: 'maxProperties',
  min_properties: 'minProperties',
  required: 'required',
  properties: 'properties',
  pattern_properties: 'patternProperties',
  additional_properties: 'additionalProperties',
  property_names: 'propertyNames',
  dependent_required: 'dependentRequired',
  dependent_schemas: 'dependentSchemas',
  all_of: 'allOf',
  any_of: 'anyOf',
  one_of: 'oneOf',
  not: 'not',
  if_then_else: 'if',
  discriminator: 'discriminator',
  ref: '$ref',
  dynamic_ref: '$dynamicRef',
  dynamic_scope: '$dynamicAnchor',
  unevaluated_properties: 'unevaluatedProperties',
  unevaluated_items: 'unevaluatedItems',
  format: 'format'
}.freeze