Erik Charlebois
|
d44e470416
|
Remove ENUM: f and replace uses with CONSTANTs.
Fix bootstrap and load-all errors from enum classes.
|
2010-04-19 20:08:40 -07:00 |
Joe Groff
|
e28882bf59
|
add alien.enums vocab with enum-c-types that convert between symbols and integer values in the FFI. update ENUM: to define symbolic enums, and take an optional base type
|
2010-04-19 20:07:18 -07:00 |
Joe Groff
|
ff0c2c66f5
|
alien.parser, alien.syntax: send ENUM: body to parse-enum
|
2010-04-19 20:07:17 -07:00 |
Joe Groff
|
f2b158ca10
|
alien.parser: have define-enum handle the case when the enum name is f
|
2010-04-19 20:07:17 -07:00 |
Joe Groff
|
e84e18f2ca
|
alien.parser, alien.syntax: refactor ENUM: to separate parsing from definition
|
2010-04-19 20:07:17 -07:00 |
Joe Groff
|
69a6dcd8c0
|
prettyprint FUNCTION-ALIAS: definitions
|
2010-04-14 12:40:10 -07:00 |
Joe Groff
|
e95edb1c47
|
alien.syntax: FUNCTION-ALIAS: syntax to define a C function binding with a different Factor name
|
2010-04-14 12:06:45 -07:00 |
Slava Pestov
|
baa04649ef
|
Move non-parsing words out of alien.syntax, and use a symbol instead of a string variable to store the current library in alien.parser
|
2010-04-12 18:09:26 -05:00 |
Erik Charlebois
|
9c2276b762
|
Change C-ENUM: to always take a type. Use f for anonymous enums. Update all uses.
|
2010-04-09 23:48:22 -07:00 |
Slava Pestov
|
747ddf5173
|
debugger: Untangle some dodgy dependencies that were loading locals before prettyprint, resulting in locals.prettyprint not being loaded
|
2010-03-17 19:19:43 +13:00 |
Joe Groff
|
92af7cc3d2
|
cut commas off of FUNCTION: parameter names in stack effects again
|
2010-02-28 19:29:53 -08:00 |
Joe Groff
|
904f30f454
|
alien.parser: refactor FUNCTION: parsing to read from the source incrementally. parse errors in FUNCTION: should now correspond to their location within the definition
|
2010-02-28 16:20:45 -08:00 |
Joe Groff
|
e49dcf2c83
|
"pointer-c-type" word-prop hack is now unnecessary since all pointer types behave uniformly now
|
2010-02-23 12:07:55 -08:00 |
Joe Groff
|
d7720a2b2d
|
typo in alien.parser test
|
2010-02-23 11:59:53 -08:00 |
Joe Groff
|
96ab4492d2
|
rename current string-mangling "char*" to "c-string". char* is now just a boring old pointer to char
|
2010-02-23 11:42:02 -08:00 |
Joe Groff
|
760effdfac
|
have TYPEDEF:, STRUCT: etc. throw an error if you try to define a c type name ending with asterisk
|
2010-02-23 10:16:18 -08:00 |
Slava Pestov
|
071836b059
|
Merge branch 'master' of git://factorcode.org/git/factor
|
2010-02-23 20:26:41 +13:00 |
Erik Charlebois
|
a221fa05a3
|
Revert change to make-callback-type cause Slava already fixed it in parse-arglist
|
2010-02-22 19:34:34 -08:00 |
Joe Groff
|
9015711322
|
alien.parser: properly generate return type name for FUNCTION: stack effects
|
2010-02-22 11:25:01 -08:00 |
Erik Charlebois
|
915a90657e
|
Merge alien/parser/parser.factor
|
2010-02-22 10:53:19 -08:00 |
Erik Charlebois
|
8e4a333fae
|
Fix CALLBACK: effect return type also not a string. Added accompanying unit test.
|
2010-02-22 10:48:21 -08:00 |
Joe Groff
|
b435b2b84b
|
Merge branch 'master' into new-alien-pointers
Conflicts:
basis/alien/c-types/c-types.factor
basis/stack-checker/dependencies/dependencies.factor
|
2010-02-22 10:32:59 -08:00 |
Slava Pestov
|
316b831208
|
alien: some code cleanups and fixes
|
2010-02-23 01:28:56 +13:00 |
Slava Pestov
|
33f3fee57d
|
alien.c-types: remove void? word
|
2010-02-22 21:31:41 +13:00 |
Joe Groff
|
a77edb8156
|
Merge branch 'master' of git://factorcode.org/git/factor into new-alien-pointers
|
2010-02-21 23:14:08 -08:00 |
Joe Groff
|
e15784ed94
|
alien.parser: favor parsing "foo*" as pointer-to-foo now
|
2010-02-21 21:06:00 -08:00 |
Joe Groff
|
77ea9f1160
|
more implementation of pointer c-types. make it so that { char* binary } acts like a real pointer to char instead of stringifying, and add byte* typedef for { char* binary }
|
2010-02-21 20:58:21 -08:00 |
Joe Groff
|
64e6f08b59
|
use a "pointer" wrapper tuple to indicate pointer types instead of the current slipshod approach
|
2010-02-21 16:27:36 -08:00 |
Erik Charlebois
|
36dc85043a
|
Unit test checking the stack effects from FUNCTION:.
|
2010-02-20 21:15:47 -08:00 |
Erik Charlebois
|
9adbbc8f98
|
The return values in the stack effects of FUNCTION: words were c-types rather than strings. This was causing scaffold-help to fail on vocabularies with FUNCTION:.
|
2010-02-20 03:02:56 -08:00 |
Joe Groff
|
22a9be5ea5
|
update existing code to use :> ( ) when possible
|
2009-10-28 16:11:33 -05:00 |
Slava Pestov
|
d55217b34a
|
alien.c-types: c-type no longer calls parser at runtime, tools.deploy.shaker now strips out runtime specialized array code generation
|
2009-10-16 23:50:17 -05:00 |
Joe Groff
|
c312779f39
|
hurr
|
2009-10-16 16:39:33 -05:00 |
Joe Groff
|
67800284fb
|
tweak parse-c-type so data-map can parse non-c-types
|
2009-10-16 16:10:09 -05:00 |
Joe Groff
|
2bdf031540
|
change parse-c-type so that c-type[symbolic-constant] parses to { c-type symbolic-constant }
|
2009-10-16 12:27:16 -05:00 |
Slava Pestov
|
a92e435799
|
alien.parser: fix behavior with restarts, reported by mnestic
|
2009-10-09 04:25:25 -05:00 |
Joe Groff
|
24c2a7fa8f
|
refactor so that generalizations reuses the stub versions of nsequence, firstn, and n*quot needed by memoize
|
2009-10-08 12:55:52 -05:00 |
Joe Groff
|
5ab16ba62a
|
change CALLBACK: to use the ABI of the current LIBRARY: and get rid of STDCALL-CALLBACK:
|
2009-09-28 19:27:28 -05:00 |
Slava Pestov
|
c5e587fb42
|
alien.parser: fix unit tests
|
2009-09-28 05:42:41 -05:00 |
Joe Groff
|
5e3e8f97f4
|
redefine C-TYPE: to forward declare opaque C types; make C type definition and redefinition a little more robust
|
2009-09-27 22:12:00 -05:00 |
Joe Groff
|
1f606a4873
|
disable parsing of string c-types
|
2009-09-27 16:06:13 -05:00 |
Joe Groff
|
ce270988df
|
oops, jumped the gun on one of the alien.parser tests there
|
2009-09-27 12:10:50 -05:00 |
Joe Groff
|
dfb58853bd
|
add some tests for parse-c-type
|
2009-09-27 12:03:23 -05:00 |
Joe Groff
|
77d10178db
|
add CALLBACK: syntax that defines a typedef and an alien-callback constructor word for function pointer types. update some code in iokit.hid and windows.dinput to use CALLBACK: instead of TYPEDEF:/word pairs
|
2009-09-21 11:59:41 -05:00 |
Joe Groff
|
52ba3f3a24
|
allow word c-types and definitions to coexist
|
2009-09-16 17:18:19 -05:00 |
Joe Groff
|
65ac206648
|
fix alien-function-word predicate
|
2009-09-16 14:17:13 -05:00 |
Joe Groff
|
bba4d3ac8a
|
prettyprinting for FUNCTION: definitions
|
2009-09-15 22:39:25 -05:00 |
Joe Groff
|
334e93bbbf
|
get things to a point where they bootstrap again
|
2009-09-15 21:43:18 -05:00 |
Joe Groff
|
0fe8bc1bff
|
create words for c-types
|
2009-09-15 15:18:54 -05:00 |
Doug Coleman
|
fe83e60e04
|
remove call to check-c-name
|
2009-07-23 18:14:07 -05:00 |