Skip to content
  1. Nov 24, 2012
  2. Jan 02, 2011
  3. Jul 29, 2008
  4. Jun 01, 2008
  5. Dec 10, 2007
    • Luís Oliveira's avatar
      Unicode string update · fbfbdb07
      Luís Oliveira authored
      - Remove outdated comments.
      - Use BABEL:SIMPLE-UNICODE-STRING type.
      - Document *DEFAULT-FOREIGN-ENCODINGS*.
      - Add :FREE-FROM-FOREIGN and :FREE-TO-FOREIGN boolean
        parameters to the :STRING type.
      fbfbdb07
  6. Aug 13, 2007
  7. Aug 06, 2007
  8. Jul 19, 2007
    • Luís Oliveira's avatar
      Use trivial-features. · d1709647
      Luís Oliveira authored
      Not sure if this is a great idea yet.  In any case, CFFI-FEATURES is
      still there for backwards compatibility for the time being.
      d1709647
  9. Jul 17, 2007
  10. Jul 08, 2007
    • Luís Oliveira's avatar
      Foreign string changes · 58199d71
      Luís Oliveira authored
      - LISP-STRING-TO-FOREIGN takes new arguments START, END and OFFSET.  Also,
        instead of bailing out when STRING needs more octets than BUFSIZE, it
        fills in as much as possible.
      - test STRING.SHORT-WRITE.1 now passes.
      - FOREIGN-STRING-TO-LISP takes new argument MAX-CHARS.
      58199d71
  11. Jul 06, 2007
  12. Jun 29, 2007
  13. Jun 28, 2007
  14. Jun 25, 2007
  15. Jun 08, 2007
    • Luís Oliveira's avatar
      Encoding support using Babel · 4f1b66c4
      Luís Oliveira authored
      - Preliminary (likely buggy) version.  Includes documentation and tests.
      - New cffi-features: big-endian and little-endian determined with CFFI
        code.
      - Needs cleaning up.
      4f1b66c4
  16. Jun 25, 2007
  17. Feb 19, 2007
  18. Nov 17, 2006
  19. Sep 08, 2006
  20. Sep 07, 2006
  21. May 03, 2006
  22. Jan 03, 2006
  23. Jan 01, 2006
  24. Dec 28, 2005
    • James Bielman's avatar
      new translator interface updates · de6a07cd
      James Bielman authored
      - Add UNPARSE generic function for unparsing types.
      - Reverse the order of the type name and class in translator GFs.
      - Add NEXT-* versions of the translator GFs.
      de6a07cd
  25. Dec 23, 2005
  26. Dec 11, 2005
    • Luís Oliveira's avatar
      Type translation refactoring · 6733be49
      Luís Oliveira authored
      - Refactoring of the type translation mechanism, now based on
        generic functions. The only user-visible changes is that you can
        now specialize the on the argument of the translator, and there's
        no type argument now (which was useless too for user-defined types).
      - Don't export define-type-spec-parser since it's useless on its own.
      - The anonymous :enum type is gone.
      - Updated manual.
      6733be49
  27. Dec 09, 2005
    • Luís Oliveira's avatar
      Lots of renaming and 2 new functions · bfddc915
      Luís Oliveira authored
      - Renamed: null-ptr -> null-pointer, null-ptr-p -> null-pointer,
        inc-ptr -> inc-pointer, with-foreign-ptr -> with-foreign-pointer,
        with-foreign-ptr-as-string -> with-foreign-pointer-as-string,
        foreign-slot-address -> foreign-slot-pointer,
        get-var-ptr -> get-var-pointer and
        foreign-symbol-ptr -> foreign-symbol-pointer.
      - Updated various references to the old names in the cffi code itself,
        examples, tests and the manual.
      - New functions: cffi(-sys):pointer-address and cffi(-sys):make-pointer.
      - Use these in uffi-compat.
      - Documented them in the manual.
      - New tests: POINTER.1 and POINTER.2
      bfddc915
  28. Dec 02, 2005
  29. Sep 09, 2005
    • Luís Oliveira's avatar
      foreign-alloc and uffi-compat · 189617e4
      Luís Oliveira authored
      - removed foreign-object-alloc, added cffi:foreign-alloc with new options
        (including the functionality foreign-object-alloc provided).
      - renamed the cffi-sys:foreign-alloc's to cffi-sys:%foreign-alloc.
      - updated respective documentation.
      - improved mem-aref's documentation including new examples.
      - fixed with buf with lisp-string-to-foreign not handling empty strings
        correctly. added regression test.
      - fixed translate-to-c and translate-from-c (not exported yet)
      - fixed uffi-compat bugs, implemented all operators (including a bunch
        that aren't documented in UFFI's manual) except a foreign-string-length
        which is weird and not used anywhere.
      - added "UFFI" as a nickname for the cffi-uffi-compat package.
      189617e4
  30. Aug 30, 2005
    • Luís Oliveira's avatar
      Documentation, bug fixes and tweaks · 67fbc31b
      Luís Oliveira authored
      Bug fixes / tweaks:
      - fixed typo in foreign-enum-value.
      - defcenum: renamed argument, allow a docstring.
      - defcvar and defcfun: also accept symbols as names.
      - defcvar: added (declare (ignore value)) when read-only is true.
      - foreign-funcall: fixed bug; premature canonicalization of the
        return-type. added regression test for this.
      - defcfun and defcallback: use the make-gensym-list utility
      - defcallback: return the callback name;
      - strings.lisp: fixed the docstrings for the :string translators;
      - mem-aref: fixed bug/typo in its setf-expander; added regression
        test for this.
      - defcstruct and defcunion: allow a docstring.
      - new tests: callbacks.qsort and funcall.string.3
      
      Documentation:
      - New file doc/Makefile for generating docs and uploading them to
        c-l.net.
      - Added every cffi function/macro that is currently exported.
        documented half of them or so.
      - colorize-lisp-examples.lisp: little script to colorize the examples
        in the texinfo-generated html docs.
      - gend...
      67fbc31b
  31. Aug 26, 2005
    • Luís Oliveira's avatar
      Type system improvements and more. · cf0aca67
      Luís Oliveira authored
      - New tests: tests/enums.lisp (4 tests) and tests/misc-types.lisp (3 tests).
      - New file: objects.lisp, skeleton of the safe typed pointer interface. I
        also added a :boolean type here, it's looking for a better home still.
      - (early-types.lisp): type parsers, DEFINE-TYPE-SPEC-PARSER and PARSE-TYPE.
        Added abbility to have anonymous types (ie. a name is no longer required
        for FOREIGN-TYPE). Moved DEFCTYPE to types.lisp.
      - (enum.lisp): improved DEFCENUM, the values for each keyword are now
        optional, like in C. Added the anonymous type (:enum ...)
      - (types.lisp):
          - Renamed :TO-C-ARG to :TO-C-DYNAMIC.
          - Renamed FOREIGN-AREF to MEM-AREF and implemented compiler macros
            for it.
          - New exported macro: DEFINE-FOREIGN-TYPE for parameterized types.
          - Change DEFINE-TYPE-TRANSLATOR back to the previous interface,
            translators take a type argument now and we have translators
            available at runtime now too.
          - FOREIGN-TYPEDEF's now inherit their parent type's translators.
          - New :wrapper type, for anonymous typedefs with translators.
      - (strings.lisp): Renamed string to :string. Added new type, :string+ptr.
      - (utils.lisp): renamed let-if to bif.
      - (tests/callbacks.lisp): two tests were not being run for SBCL
        because I thought it triggered a bug but it's actually only one that
        triggers the bug. Fixed that.
      - Updated examples and tests to use :string instead of string.
      cf0aca67