c-next 0.2.9 → 0.2.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. package/dist/index.js +814 -206
  2. package/dist/index.js.map +4 -4
  3. package/package.json +1 -1
  4. package/src/transpiler/Transpiler.ts +97 -7
  5. package/src/transpiler/__tests__/Transpiler.coverage.test.ts +170 -0
  6. package/src/transpiler/__tests__/needsConditionalPreprocessing.test.ts +246 -0
  7. package/src/transpiler/logic/analysis/ArrayIndexTypeAnalyzer.ts +12 -1
  8. package/src/transpiler/logic/analysis/__tests__/ArrayIndexTypeAnalyzer.test.ts +172 -0
  9. package/src/transpiler/logic/symbols/SymbolTable.ts +84 -0
  10. package/src/transpiler/logic/symbols/__tests__/SymbolTable.test.ts +43 -0
  11. package/src/transpiler/logic/symbols/__tests__/TransitiveEnumCollector.test.ts +1 -0
  12. package/src/transpiler/logic/symbols/c/__tests__/CResolver.integration.test.ts +98 -1
  13. package/src/transpiler/logic/symbols/c/collectors/FunctionCollector.ts +23 -5
  14. package/src/transpiler/logic/symbols/c/collectors/StructCollector.ts +69 -2
  15. package/src/transpiler/logic/symbols/c/index.ts +85 -30
  16. package/src/transpiler/logic/symbols/c/utils/DeclaratorUtils.ts +18 -0
  17. package/src/transpiler/logic/symbols/cnext/__tests__/TSymbolInfoAdapter.test.ts +90 -0
  18. package/src/transpiler/logic/symbols/cnext/adapters/TSymbolInfoAdapter.ts +40 -39
  19. package/src/transpiler/output/codegen/CodeGenerator.ts +23 -1
  20. package/src/transpiler/output/codegen/TypeResolver.ts +14 -0
  21. package/src/transpiler/output/codegen/__tests__/CodeGenerator.test.ts +19 -14
  22. package/src/transpiler/output/codegen/__tests__/TypeResolver.test.ts +7 -7
  23. package/src/transpiler/output/codegen/analysis/__tests__/MemberChainAnalyzer.test.ts +1 -0
  24. package/src/transpiler/output/codegen/assignment/AssignmentClassifier.ts +27 -4
  25. package/src/transpiler/output/codegen/assignment/AssignmentKind.ts +6 -0
  26. package/src/transpiler/output/codegen/assignment/__tests__/AssignmentClassifier.test.ts +73 -0
  27. package/src/transpiler/output/codegen/assignment/handlers/BitAccessHandlers.ts +4 -0
  28. package/src/transpiler/output/codegen/assignment/handlers/SimpleHandler.ts +92 -0
  29. package/src/transpiler/output/codegen/assignment/handlers/__tests__/BitAccessHandlers.test.ts +5 -2
  30. package/src/transpiler/output/codegen/assignment/handlers/__tests__/handlerTestUtils.ts +1 -0
  31. package/src/transpiler/output/codegen/generators/IOrchestrator.ts +14 -0
  32. package/src/transpiler/output/codegen/generators/declarationGenerators/ScopeGenerator.ts +17 -2
  33. package/src/transpiler/output/codegen/generators/declarationGenerators/__tests__/ScopeGenerator.test.ts +49 -0
  34. package/src/transpiler/output/codegen/generators/expressions/AccessExprGenerator.ts +17 -5
  35. package/src/transpiler/output/codegen/generators/expressions/CallExprGenerator.ts +5 -0
  36. package/src/transpiler/output/codegen/generators/expressions/LiteralGenerator.ts +16 -0
  37. package/src/transpiler/output/codegen/generators/expressions/PostfixExpressionGenerator.ts +41 -5
  38. package/src/transpiler/output/codegen/generators/expressions/UnaryExprGenerator.ts +25 -1
  39. package/src/transpiler/output/codegen/generators/statements/AtomicGenerator.ts +2 -17
  40. package/src/transpiler/output/codegen/helpers/ArrayAccessHelper.ts +3 -0
  41. package/src/transpiler/output/codegen/helpers/BitRangeHelper.ts +19 -3
  42. package/src/transpiler/output/codegen/helpers/NarrowingCastHelper.ts +191 -0
  43. package/src/transpiler/output/codegen/helpers/VariableDeclHelper.ts +35 -4
  44. package/src/transpiler/output/codegen/helpers/__tests__/ArrayAccessHelper.test.ts +131 -1
  45. package/src/transpiler/output/codegen/helpers/__tests__/AssignmentExpectedTypeResolver.test.ts +1 -0
  46. package/src/transpiler/output/codegen/helpers/__tests__/AssignmentValidator.test.ts +1 -0
  47. package/src/transpiler/output/codegen/helpers/__tests__/BitRangeHelper.test.ts +53 -2
  48. package/src/transpiler/output/codegen/helpers/__tests__/FunctionContextManager.test.ts +1 -0
  49. package/src/transpiler/output/codegen/helpers/__tests__/NarrowingCastHelper.test.ts +159 -0
  50. package/src/transpiler/output/codegen/helpers/__tests__/TypeRegistrationEngine.test.ts +1 -0
  51. package/src/transpiler/output/codegen/types/COMPOUND_TO_BINARY.ts +21 -0
  52. package/src/transpiler/output/codegen/types/IArrayAccessInfo.ts +2 -0
  53. package/src/transpiler/state/CodeGenState.ts +49 -0
  54. package/src/transpiler/state/__tests__/CodeGenState.test.ts +53 -0
  55. package/src/transpiler/state/__tests__/TranspilerState.test.ts +1 -0
  56. package/src/transpiler/types/ICachedFileEntry.ts +2 -0
  57. package/src/transpiler/types/ICodeGenSymbols.ts +8 -0
  58. package/src/utils/BitUtils.ts +33 -4
  59. package/src/utils/cache/CacheManager.ts +9 -1
  60. package/src/utils/cache/__tests__/CacheManager.test.ts +1 -1

There are too many changes on this page to be displayed.


The amount of changes on this page would crash your brower.

You can still verify the content by downloading the package file manually.