Module Picture.TYPES

type symbol =
  1. | A
  2. | B
  3. | CR
  4. | CS
  5. | DB
  6. | DecimalSep
  7. | E
  8. | GroupingSep
  9. | L
  10. | Minus
  11. | N
  12. | Nine
  13. | One
  14. | P
  15. | Plus
  16. | S
  17. | Slant
  18. | Star
  19. | V
  20. | X
  21. | Z
  22. | Zero
val pp_symbol : symbol Pretty.printer
val pp_symbol_cobolized : symbol Pretty.printer
type symbols = {
  1. symbol : symbol;
  2. symbol_occurences : int;
}
type category =
  1. | Alphabetic of {
    1. length : int;
    }
  2. | Alphanumeric of {
    1. length : int;
    2. insertions : simple_insertion list;
    }
  3. | Boolean of {
    1. length : int;
    }
  4. | National of {
    1. length : int;
    2. insertions : simple_insertion list;
    }
  5. | FixedNum of {
    1. digits : int;
    2. scale : int;
    3. with_sign : bool;
    4. editions : editions;
    }
  6. | FloatNum of {
    1. digits : int;
    2. scale : int;
    3. with_sign : bool;
    4. exponent_digits : int;
    5. editions : basic_edition list;
    }
and editions = {
  1. basics : basic_edition list;
  2. floating : floating_insertion option;
  3. zerorepl : zero_replacement option;
}
and basic_edition =
  1. | SimpleInsertion of simple_insertion
  2. | SpecialInsertion of special_insertion
  3. | FixedInsertion of fixed_insertion
and simple_insertion = {
  1. simple_insertion_symbols : symbols;
  2. simple_insertion_offset : int;
}
and special_insertion = {
  1. special_insertion_offset : int;
}
and fixed_insertion = {
  1. fixed_insertion_symbol : symbol;
  2. fixed_insertion_offset : int;
}
and floating_insertion = {
  1. floating_insertion_symbol : symbol;
  2. floating_insertion_ranges : floating_range list;
}
and zero_replacement = {
  1. zero_replacement_symbol : symbol;
  2. zero_replacement_ranges : floating_range list;
}
and floating_range = {
  1. floating_range_offset : int;
  2. floating_range_length : int;
}
type picture = {
  1. category : category;
  2. pic : symbols list;
}
val pp_picture : Ppx_deriving_runtime.Format.formatter -> picture -> Ppx_deriving_runtime.unit
val show_picture : picture -> Ppx_deriving_runtime.string
val compare_picture : picture -> picture -> Ppx_deriving_runtime.int
type config = {
  1. max_pic_length : int;
  2. decimal_char : char;
  3. currency_signs : Cobol_common.Basics.CharSet.t;
}
type error =
  1. | May_only_appear_once of {
    1. symbol_precedence : int;
    2. decimal_char : char;
    }
  2. | May_not_follow of {
    1. symbol_precedence : int;
    2. prev_precedence : int;
    3. decimal_char : char;
    }
  3. | Parenthesis_must_be_preceded_by_picture_symbol
  4. | Unexpected_char of char
  5. | Extraneous_symbol_in_exponent
  6. | Symbol_may_only_appear_once of symbol
  7. | Symbol_must_be_at_start of symbol
  8. | Symbol_must_be_at_end of symbol
  9. | Symbol_must_be_at_start_or_end of symbol
  10. | Symbols_are_mutually_exclusive of symbol * symbol
  11. | Unexpected_symbol of symbol * category option
  12. | Empty_picture_string
  13. | Picture_length_exceeds_limit of int * int
  14. | Missing_symbol_in_exponent
  15. | Missing_digits_in_exponent
  16. | Picture_describes_empty_data_item
  17. | Numeric_item_cannot_exceed_38_digits of int
module type ENV = sig ... end