public.h 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. #pragma once
  2. #include <vector>
  3. #include <memory>
  4. namespace NSkiff {
  5. ////////////////////////////////////////////////////////////////////////////////
  6. enum class EWireType
  7. {
  8. Nothing /* "nothing" */,
  9. Int8 /* "int8" */,
  10. Int16 /* "int16" */,
  11. Int32 /* "int32" */,
  12. Int64 /* "int64" */,
  13. Int128 /* "int128" */,
  14. Int256 /* "int256" */,
  15. Uint8 /* "uint8" */,
  16. Uint16 /* "uint16" */,
  17. Uint32 /* "uint32" */,
  18. Uint64 /* "uint64" */,
  19. Uint128 /* "uint128" */,
  20. Uint256 /* "uint256" */,
  21. Double /* "double" */,
  22. Boolean /* "boolean" */,
  23. String32 /* "string32" */,
  24. Yson32 /* "yson32" */,
  25. Tuple /* "tuple" */,
  26. Variant8 /* "variant8" */,
  27. Variant16 /* "variant16" */,
  28. RepeatedVariant8 /* "repeated_variant8" */,
  29. RepeatedVariant16 /* "repeated_variant16" */,
  30. };
  31. ////////////////////////////////////////////////////////////////////////////////
  32. class TSkiffSchema;
  33. using TSkiffSchemaPtr = std::shared_ptr<TSkiffSchema>;
  34. using TSkiffSchemaList = std::vector<TSkiffSchemaPtr>;
  35. class TSimpleTypeSchema;
  36. using TSimpleTypeSchemaPtr = std::shared_ptr<TSimpleTypeSchema>;
  37. class TSkiffValidator;
  38. class TUncheckedSkiffParser;
  39. class TCheckedSkiffParser;
  40. class TUncheckedSkiffWriter;
  41. class TCheckedSkiffWriter;
  42. #ifdef DEBUG
  43. using TCheckedInDebugSkiffParser = TCheckedSkiffParser;
  44. using TCheckedInDebugSkiffWriter = TCheckedSkiffWriter;
  45. #else
  46. using TCheckedInDebugSkiffParser = TUncheckedSkiffParser;
  47. using TCheckedInDebugSkiffWriter = TUncheckedSkiffWriter;
  48. #endif
  49. ////////////////////////////////////////////////////////////////////////////////
  50. } // namespace NSkiff