Slava Pestov
7cf4e608e5
alien: move code for supporting CONSTANT: foo 123 { "int" foo } C types into one place instead of the old scattershot approach
2009-08-27 21:49:25 -05:00
Slava Pestov
f808f43ffb
A few inline declarations
2009-08-27 04:09:12 -05:00
Joe Groff
53b7729f76
require struct-arrays after alien.structs is loaded
2009-08-26 22:24:55 -05:00
Joe Groff
24c2eaae01
box elements of struct-arrays when a struct class is used as the element type
2009-08-26 17:19:30 -05:00
Joe Groff
b6bba164e4
box array c-types into direct-arrays
2009-08-25 21:36:25 -05:00
Joe Groff
87c670b785
no really, support <c-type-array> of structs using struct-arrays
2009-08-25 20:57:23 -05:00
Joe Groff
a2518377e3
support <c-type-array> of structs using struct-arrays
2009-08-25 20:43:48 -05:00
Joe Groff
8aa9327dcc
support <c-type-array> on complex ffi types
2009-08-25 19:58:04 -05:00
Joe Groff
005107973f
docs for require-c-type-arrays, <c-type-array>, <c-type-direct-array>
2009-08-25 18:51:56 -05:00
Joe Groff
59cdec755a
throw a better error if <c-type*-array> is called when specialized array vocab isn't loaded. fix <c-type-direct-array>
2009-08-25 18:24:49 -05:00
Joe Groff
79787f6259
associate specialized-arrays vocabs with c-types; add words for requiring vocabs and constructing arrays by C type
2009-08-25 17:56:01 -05:00
Slava Pestov
7b6d00a833
alien.destructors: don't use disposable protocol, since it is common practice to 'leak' alien destructors (|Foo idiom)
2009-08-24 20:45:46 -05:00
Slava Pestov
46045c882e
Disposables are now registered in a global disposables set. To take advantage of this, subclass disposable instead of providing a disposed slot and call new-disposable instead of new. tools.disposables defines two words, 'disposable.' and 'leaks', to help track down resource lifetime problems
2009-08-24 02:26:13 -05:00
Doug Coleman
3f3d57032b
Delete empty unit tests files, remove 1- and 1+, reorder IN: lines in a lot of places, minor refactoring
2009-08-13 19:21:44 -05:00
Slava Pestov
422dd24bad
alien.complex: fix tests
2009-08-11 14:07:33 -05:00
Slava Pestov
9fb0dcd9bd
alien: need to differentiate between the type of the result before and after boxing; the former is used by propagation for #alien-invoke nodes and the latter is used by specialized arrays. This fixes FFI unit test failures
2009-08-10 16:17:33 -05:00
Slava Pestov
d19c403fee
alien.structs: struct-type now has a class slot; fix specialized complex-float/double arrays
2009-08-09 16:10:11 -05:00
Slava Pestov
725280d424
Split off the notion of a register representation from a register class
2009-08-07 17:44:50 -05:00
Joe Groff
a2fe9f1952
[ [ ... ] bi@ <=> ] sort => [ ... ] sort-with
2009-08-02 20:13:59 -05:00
Slava Pestov
1993274d01
alien.libraries: add-library should now reload the library properly, instead of just leaking DLL handles
2009-07-31 19:46:18 -05:00
Doug Coleman
f7b2e4a155
remove call to check-c-name
2009-07-23 18:14:07 -05:00
Doug Coleman
9bb38b870c
allow FUNCTION: to parse pointers in the name field
2009-07-23 18:05:09 -05:00
Doug Coleman
bad8e05937
Disallow C functions and parameter names that contain an asterisk
2009-07-23 15:48:10 -05:00
Jeremy Hughes
79dd644e57
moved alien.inline and alien.marshall to extra
2009-07-14 22:39:27 +12:00
Jeremy Hughes
48bd9aaacf
alien.marshall.syntax: added documentation
2009-07-14 22:36:59 +12:00
Jeremy Hughes
cddc5a3188
alien.marshall.syntax: arg renaming
2009-07-14 22:36:45 +12:00
Jeremy Hughes
586cf9547f
alien.marshall: fixed char* unmarshalling bug
2009-07-14 22:33:23 +12:00
Jeremy Hughes
90b7ca501b
alien.(inline,marshall): removed unused doc helper words and made the rest private
2009-07-14 22:32:37 +12:00
Jeremy Hughes
010af379bb
alien.marshall.structs: added documentation
2009-07-14 20:51:32 +12:00
Jeremy Hughes
92e38530a3
alien.marshall.structs: made some words private
2009-07-14 20:50:52 +12:00
Jeremy Hughes
3b56dc8b13
alien.marshall.structs: moved struct-wrapper dispose* method to alien.marshall
2009-07-14 20:50:20 +12:00
Jeremy Hughes
f65adc1a63
alien.marshall: added documentation
2009-07-14 10:26:45 +12:00
Jeremy Hughes
fd23b4070f
alien.marshall: marshalling word fixes
2009-07-14 10:26:26 +12:00
Jeremy Hughes
702419c092
alien.marshall.private: remove marshall-TYPE and make () words private
2009-07-14 10:25:34 +12:00
Jeremy Hughes
1cca58d781
alien.marshall: use marshall-primitive instead of marshall-<primitive> words
2009-07-14 10:24:31 +12:00
Jeremy Hughes
c5e30fee3e
alien.marshall: rewrote bool marshalling
2009-07-14 10:21:32 +12:00
Jeremy Hughes
c0714c6135
alien.inline.types: factorize-type and pointer-to-const? accept strings with spaces
2009-07-14 10:20:13 +12:00
Jeremy Hughes
687d541838
alien.marshall: dynamic-cast: renamed to unmarshall-cast
2009-07-13 10:26:41 +12:00
Jeremy Hughes
2aec1d697c
alien.inline.compiler: added -mno-cygwin to linker on windows
2009-07-11 20:53:50 +12:00
Jeremy Hughes
0d88577890
Merge branch 'inlinec' into marshall
...
* inlinec:
alien.inline.compiler: changed windows compiler options
2009-07-11 20:52:01 +12:00
Jeremy Hughes
d2077b1670
alien.inline.compiler: changed windows compiler options
2009-07-11 20:51:34 +12:00
Jeremy Hughes
11183fa5db
alien.inline.*: fixed merge breakage
2009-07-11 20:50:27 +12:00
Jeremy Hughes
579aba5625
Merge branch 'inlinec' into marshall
...
* inlinec: (49 commits)
alien.inline.compiler: documentation
alien.inline.compiler: fixed library-path and made other words private
alien.inline: renamed compiler-args to linker-args
alien.inline: added with-c-library word
alien.inline: added documentation
alien.inline: better names
alien.inline: remove vocab argument from define-c-struct
alien.inline: made define-c-function and define-c-function' standalone
alien.inline: fix library name and us remove-library
alien.inline.compile: write library files to resource:alien-inline-libs
Revert "Remove unused vocabulary" -- committed patch from the wrong machine
Remove unused vocabulary
Fixing some test failures after url.encoding change
FUEL: Font lock/indentation for M::.
replace 2array "." join with "." glue
contributors: exclude merges to make patch counts more reasonable
alien.libraries: add remove-library word, fix dlclose and dll-valid? VM primitives
alien.libraries: add dispose method for library tuple, and remove-library word; add-library first calls remove-library to properly close the library when reloading
changed single byte writes to write1
removed usages of sprintf
...
Conflicts:
basis/alien/inline/compiler/compiler.factor
basis/alien/inline/inline.factor
2009-07-11 19:58:25 +12:00
Jeremy Hughes
f2380aab7f
alien.inline.compiler: documentation
2009-07-11 19:24:09 +12:00
Jeremy Hughes
eb72ba84f6
alien.inline.compiler: fixed library-path and made other words private
2009-07-11 19:23:49 +12:00
Jeremy Hughes
b03b769966
alien.inline: renamed compiler-args to linker-args
2009-07-11 19:23:21 +12:00
Jeremy Hughes
4a5cb3aac3
alien.inline: added with-c-library word
2009-07-11 00:08:40 +12:00
Jeremy Hughes
dc80d8575f
alien.inline: added documentation
2009-07-10 23:55:32 +12:00
Jeremy Hughes
864a6e7508
alien.inline: better names
2009-07-10 23:55:05 +12:00
Jeremy Hughes
0851823ba9
alien.inline: remove vocab argument from define-c-struct
2009-07-10 23:54:40 +12:00