Changes

Summary

  1. Adding tests for simple cases (details)
  2. Use value argument at the moment of parsing (details)
  3. Introduce FFI Variable argument + type declaration (details)
  4. introduce literal integers as value arguments (details)
  5. Resolution of literals is done afterwards (details)
  6. Resolution of constants (details)
  7. Resolution of instance variables (details)
  8. Add class variable resolution (details)
  9. Test method arguments (details)
  10. Introduce undefined type declarations (details)
  11. Testing type resolution of typed variables and untyped constants (details)
  12. Separating old ValueArgument from ConstantArgument. New parse=>resolve (details)
  13. Use new Constant instead of old Value argument in new tests (details)
  14. Making self work in both mixed-parsing and parse-then-resolve parsers (details)
  15. introduce simpler literal parser using RB + pointer argument tests (details)
  16. Making void arguments work again (details)
  17. Replace old parser by new parser (details)
  18. Support for const types (details)
  19. Support for callbacks in new argument schema (details)
  20. Making testBuildingFnSpec pass (details)
  21. uncancelling float/double tests (details)
  22. Merge FFIFunctionParser and FFISplitFunctionParser (details)
  23. Remove ffi compiled methods after running tests (details)
  24. Add tests for typed literals (details)
  25. Add tests for typed false, floats and string (details)
  26. More tests + do not mistake the 'self' string for the #self symbol (details)
  27. Introduce strict and non-strict modes (details)
  28. Strict modes configurable through options (details)
  29. Cleanup: split function resolution from function parsing  - using (details)
  30. Cleanup: Remove unused methods (details)
  31. Cleanup: remove unused class (details)
  32. Documentation: add class comments (details)
  33. Fix categorization (details)
Commit a8f44b6cfad79ef5aba678521b23de84f804125d by guillermopolito
Adding tests for simple cases
The file was modifiedsrc/UnifiedFFI/FFIFunctionParser.class.st (diff)
The file was modifiedsrc/UnifiedFFI-Tests/FFIFunctionParserTest.class.st (diff)
Commit 5bf5ec8f7152628f22b8ec6dfcade5dd85117e6f by guillermopolito
Use value argument at the moment of parsing
The file was modifiedsrc/UnifiedFFI-Tests/FFIFunctionParserTest.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFIFunctionParser.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFIValueArgument.class.st (diff)
Commit acbbb01f05734b76c0223fd1c4a2f9f3c41d9c51 by guillermopolito
Introduce FFI Variable argument + type declaration
The file was modifiedsrc/UnifiedFFI/FFIFunctionParser.class.st (diff)
The file was addedsrc/UnifiedFFI/FFITypeDeclaration.class.st
The file was modifiedsrc/UnifiedFFI-Tests/FFIFunctionParserTest.class.st (diff)
The file was addedsrc/UnifiedFFI/FFIVariableArgument.class.st
Commit a727c98451527e4220b7d74f2b9b9d1c13b66c0d by guillermopolito
introduce literal integers as value arguments
The file was modifiedsrc/UnifiedFFI/FFIFunctionParser.class.st (diff)
The file was modifiedsrc/UnifiedFFI-Tests/FFIFunctionParserTest.class.st (diff)
Commit da75938825c21b495e4dce91ee9dafc8f848a30f by guillermopolito
Resolution of literals is done afterwards
The file was modifiedsrc/UnifiedFFI/FFIValueArgument.class.st (diff)
The file was addedsrc/UnifiedFFI-Tests/FFIFunctionResolutionTest.class.st
The file was modifiedsrc/UnifiedFFI-Tests/FFIFunctionParserTest.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFIValueArgument.class.st (diff)
The file was modifiedsrc/UnifiedFFI-Tests/FFIFunctionResolutionTest.class.st (diff)
Commit 5fecc94eee45aea1edd1f79adf003e2bf8cdddad by guillermopolito
Resolution of instance variables
The file was modifiedsrc/UnifiedFFI/FFIVariableArgument.class.st (diff)
The file was modifiedsrc/UnifiedFFI-Tests/FFIFunctionResolutionTest.class.st (diff)
Commit 1d074a39cc2b010ec88e37f761ef9eae2a4e1831 by guillermopolito
Add class variable resolution
The file was modifiedsrc/UnifiedFFI-Tests/FFIFunctionResolutionTest.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFICallout.class.st (diff)
The file was addedsrc/UnifiedFFI/FFIClassVariableArgument.class.st
The file was modifiedsrc/UnifiedFFI/FFIVariableArgument.class.st (diff)
The file was modifiedsrc/UnifiedFFI-Tests/FFIFunctionResolutionTest.class.st (diff)
Commit bdb34ddbacabe9315decba4d7eab96a1ac5ca811 by guillermopolito
Introduce undefined type declarations
The file was modifiedsrc/UnifiedFFI/FFIValueArgument.class.st (diff)
The file was modifiedsrc/UnifiedFFI-Tests/FFIFunctionParserTest.class.st (diff)
The file was addedsrc/UnifiedFFI/FFIUndefinedTypeDeclaration.class.st
Commit ba1e10d1162a284424134ad5340d043171a850d8 by guillermopolito
Testing type resolution of typed variables and untyped constants
The file was modifiedsrc/UnifiedFFI-Tests/FFIFunctionResolutionTest.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFITypeDeclaration.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFIValueArgument.class.st (diff)
The file was addedsrc/UnifiedFFI-Tests/FFIExternalObjectForTest.class.st
The file was addedsrc/UnifiedFFI-Tests/FFITestType.class.st
The file was modifiedsrc/UnifiedFFI/FFIUndefinedTypeDeclaration.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFIVariableArgument.class.st (diff)
Commit 1a8ffbc48c652948493374edae521a9e2e011780 by guillermopolito
Separating old ValueArgument from ConstantArgument. New parse=>resolve
works similarly to parse+resolve
The file was modifiedsrc/UnifiedFFI/FFITypeDeclaration.class.st (diff)
The file was addedsrc/UnifiedFFI-Tests/FFIAbstractTest.class.st
The file was addedsrc/UnifiedFFI/FFIConstantArgument.class.st
The file was modifiedsrc/UnifiedFFI/FFIFunctionParser.class.st (diff)
The file was modifiedsrc/UnifiedFFI-Tests/FFIFunctionParserTest.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFIValueArgument.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFIFunctionSpec.class.st (diff)
The file was modifiedsrc/UnifiedFFI-Tests/FFITestType.class.st (diff)
The file was modifiedsrc/UnifiedFFI-Tests/FFIFunctionResolutionTest.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFIVariableArgument.class.st (diff)
The file was addedsrc/UnifiedFFI-Tests/FFITestObject.class.st
Commit 077d48934d71622c7cd02bcf5ff2920cb489c111 by guillermopolito
Use new Constant instead of old Value argument in new tests
The file was modifiedsrc/UnifiedFFI-Tests/FFIFunctionResolutionTest.class.st (diff)
Commit 811bec6354e8f285c3c49e2751d54fc70d0d2982 by guillermopolito
Making self work in both mixed-parsing and parse-then-resolve parsers
The file was modifiedsrc/UnifiedFFI-Tests/FFIFunctionResolutionTest.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFIValueArgument.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFIExternalReferenceType.class.st (diff)
The file was modifiedsrc/UnifiedFFI-Tests/FFITestObject.class.st (diff)
The file was modifiedsrc/UnifiedFFI-Tests/FFIFunctionParserTest.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFIConstantArgument.class.st (diff)
Commit 1d9d0f65d06f1ee4a8e224b5ff033b3ecbd9d9db by guillermopolito
introduce simpler literal parser using RB + pointer argument tests
The file was addedsrc/UnifiedFFI/FFIFunctionArgumentLoader.class.st
The file was modifiedsrc/UnifiedFFI/FFIFunctionArgument.class.st (diff)
The file was modifiedsrc/UnifiedFFI-Tests/FFIOpaqueObjectTest.class.st (diff)
The file was modifiedsrc/UnifiedFFI-Tests/FFICalloutTest.class.st (diff)
The file was addedsrc/UnifiedFFI/FFISplitFunctionParser.class.st
The file was modifiedsrc/UnifiedFFI/FFIVariableArgument.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFIConstantArgument.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFIValueArgument.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFIClassVariableArgument.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFISelfArgument.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFIFunctionParser.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFIInstVarArgument.class.st (diff)
The file was modifiedsrc/UnifiedFFI-Tests/FFIFunctionParserTest.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFICallout.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFIMethodArgument.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFIUndefinedTypeDeclaration.class.st (diff)
The file was addedsrc/UnifiedFFI-Tests/FFINewFunctionParserTest.class.st
The file was modifiedsrc/UnifiedFFI-Tests/FFICalloutAPITest.class.st (diff)
Commit 6896025a0907f5777ae4c1784280e32b9f990400 by guillermopolito
Making void arguments work again
The file was modifiedsrc/UnifiedFFI/FFIConstantArgument.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFIConst.class.st (diff)
Commit 65e11a62c02404c7159bedecf8415ce62f6de2d8 by guillermopolito
Replace old parser by new parser
The file was modifiedsrc/UnifiedFFI/FFICallout.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFIUndefinedTypeDeclaration.class.st (diff)
The file was modifiedsrc/UnifiedFFI-Tests/FFIOpaqueObjectTest.class.st (diff)
The file was modifiedsrc/UnifiedFFI-Tests/FFIFunctionParserTest.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFICallback.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFIConstantArgument.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFISplitFunctionParser.class.st (diff)
The file was modifiedsrc/UnifiedFFI-Tests/FFIFunctionResolutionTest.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFICalloutMethodBuilder.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFISplitFunctionParser.class.st (diff)
Commit 9ab7c804421660576e6ce520b4a7e6cdd70ede7d by guillermopolito
Support for callbacks in new argument schema
The file was modifiedsrc/UnifiedFFI/FFICallbackArgumentReader.class.st (diff)
Commit 2e82470b25911af6da978c07e2d401dac69157b1 by guillermopolito
Making testBuildingFnSpec pass
The file was modifiedsrc/UnifiedFFI-Tests/FFICalloutTest.class.st (diff)
Commit e4cbb4dac0b861a828cbe856b3070546c41da9c7 by guillermopolito
uncancelling float/double tests
The file was modifiedsrc/UnifiedFFI-Tests/FFICalloutAPITest.class.st (diff)
Commit b8a681b62b6b499072d6487487650abed14b298e by guillermopolito
Merge FFIFunctionParser and FFISplitFunctionParser
The file was modifiedsrc/UnifiedFFI-Tests/FFIFunctionParserTest.class.st (diff)
The file was modifiedsrc/UnifiedFFI-Tests/FFIOpaqueObjectTest.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFIFunctionParser.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFICallout.class.st (diff)
The file was removedsrc/UnifiedFFI/FFISplitFunctionParser.class.st
The file was modifiedsrc/UnifiedFFI/FFICalloutMethodBuilder.class.st (diff)
The file was removedsrc/UnifiedFFI-Tests/FFINewFunctionParserTest.class.st
The file was modifiedsrc/UnifiedFFI/FFICallback.class.st (diff)
Commit 2a3d381cebb669b5a356557308a0028494a4b5a2 by guillermopolito
Remove ffi compiled methods after running tests
The file was modifiedsrc/UnifiedFFI-Tests/FFICalloutAPITest.class.st (diff)
Commit a6e0096d6bde25af6871a81a1d4205c121d07169 by guillermopolito
Add tests for typed literals
The file was modifiedsrc/UnifiedFFI/FFIConstantArgument.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFIFunctionParser.class.st (diff)
The file was modifiedsrc/UnifiedFFI-Tests/FFIFunctionParserTest.class.st (diff)
Commit 73535b8243735524b928cd2f706a7530ea0f65cc by guillermopolito
Add tests for typed false, floats and string
The file was modifiedsrc/UnifiedFFI-Tests/FFIFunctionParserTest.class.st (diff)
Commit 8c167dd0fa08a8720a92d9c298e46892584675ef by guillermopolito
More tests + do not mistake the 'self' string for the #self symbol
The file was addedsrc/UnifiedFFI/FFIUnsupportedUntypedLiteral.class.st
The file was modifiedsrc/UnifiedFFI-Tests/FFIFunctionParserTest.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFIUndefinedTypeDeclaration.class.st (diff)
The file was modifiedsrc/UnifiedFFI-Tests/FFIAbstractTest.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFIConstantArgument.class.st (diff)
The file was modifiedsrc/UnifiedFFI-Tests/FFIFunctionResolutionTest.class.st (diff)
Commit 6c5bfc8c3dc6ada6a9cb9bc2f269ae01ba601441 by guillermopolito
Introduce strict and non-strict modes
The file was modifiedsrc/UnifiedFFI/FFIUndefinedTypeDeclaration.class.st (diff)
The file was modifiedsrc/UnifiedFFI-Tests/FFIFunctionResolutionTest.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFICallout.class.st (diff)
The file was addedsrc/UnifiedFFI/FFIInferenceResolutionMode.class.st
The file was addedsrc/UnifiedFFI/FFIStrictResolutionMode.class.st
Commit b6dcad1a7db2ddded89dc8d066097722db1c469e by guillermopolito
Strict modes configurable through options
The file was modifiedsrc/UnifiedFFI/FFIStrictResolutionMode.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFICallout.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFIInferenceResolutionMode.class.st (diff)
The file was modifiedsrc/UnifiedFFI-Tests/FFICalloutTest.class.st (diff)
Commit 6b94bfb8c4ab3b7c8c08ffde382709bf6a0b22cb by guillermopolito
Cleanup: split function resolution from function parsing  - using
resolved type in callbacks
The file was modifiedsrc/UnifiedFFI/FFIAlienCallback.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFIVariableArgument.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFICallbackArgumentReader.class.st (diff)
The file was modifiedsrc/UnifiedFFI-Tests/FFIOpaqueObjectTest.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFICallback.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFICalloutMethodBuilder.class.st (diff)
The file was modifiedsrc/UnifiedFFI-Tests/FFICalloutTest.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFITypeDeclaration.class.st (diff)
The file was modifiedsrc/UnifiedFFI-Tests/FFIAbstractTest.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFIFunctionParser.class.st (diff)
Commit 7bc8581df883cd0e3aff96a97413fdf16ceb00c2 by guillermopolito
Cleanup: Remove unused methods
The file was modifiedsrc/UnifiedFFI/FFICallout.class.st (diff)
Commit 09fb83da3e9884b8814537c67726abca2dbe2007 by guillermopolito
Cleanup: remove unused class
The file was removedsrc/UnifiedFFI/FFIValueArgument.class.st
Commit 81893e08e5295bcdaee54eb2706d8c3e2f56f876 by guillermopolito
Documentation: add class comments
The file was modifiedsrc/UnifiedFFI/FFIUndefinedTypeDeclaration.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFIClassVariableArgument.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFIConstantArgument.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFITypeDeclaration.class.st (diff)
The file was modifiedsrc/UnifiedFFI/FFIVariableArgument.class.st (diff)
The file was modifiedsrc/UnifiedFFI-Tests/FFIFunctionParserTest.class.st (diff)