Alexander Iljin
504c9959a1
Update some copyright headers to follow the current convention
...
Had to look through the history to find years for some headers. Added
authors to some files as well.
2017-09-11 15:43:03 -07:00
John Benediktsson
e0389df8c4
Revert "alien.parser: throw error if enum values don't fit c-type."
...
This reverts commit 2e326498a4
.
2016-11-09 15:41:54 -08:00
John Benediktsson
2e326498a4
alien.parser: throw error if enum values don't fit c-type.
2016-11-08 21:45:54 -08:00
Björn Lindqvist
b418b434fa
alien.debugger: this vocab isn't needed
...
The summary methods doesn't need dedicated vocabs. Unlike prettyprint methods.
2016-08-15 15:16:41 +02:00
Björn Lindqvist
907d63c16b
alien.*: moving the c-type-string word to the alien.c-types vocab
...
This way it can be used in alien.parser instead of return-type-name.
2016-08-10 21:34:38 +02:00
Björn Lindqvist
13a983783f
alien.parser/prettyprint: moving the predicates
2016-08-10 21:34:38 +02:00
Björn Lindqvist
ddc5ece757
alien.*: frontend varargs support! #1677
...
alien-invoke gets an extra parameter indicating if the call uses varargs
or not. In 99.9% of the cases, the parameter should be f, but is t if
varargs are indicated. E.g
: do-printf ( fmt d -- st ) int f "printf" { c-string double } t alien-invoke ;
2016-08-10 21:34:37 +02:00
Björn Lindqvist
dbd716cc99
alien.parser: method object return-type-name is redundant
2016-08-10 21:34:37 +02:00
Björn Lindqvist
941c9fabd4
alien.parser,gobject-introspection.ffi: fixing the manifest test errors (see #1463 )
2016-05-28 19:01:54 +02:00
Björn Lindqvist
b96077beb7
alien.parser: better fix for #1535
...
These changes ensure that reset-generic is called when parsing alien
words. Otherwise problems occur when you redefine generics as callbacks
or typedefs.
2016-05-28 17:22:45 +02:00
Björn Lindqvist
69f667edc8
alien.parser: make make-callback-type have the same signature as make-function
2016-05-28 17:21:45 +02:00
Björn Lindqvist
350e890a03
alien.parser: fix for #1535
...
(CREATE-C-TYPE) needs to be called on the word naming the
callback. Otherwise the old definition remains in old-definition and you
can get a no word found error.
2016-05-27 20:54:52 +02:00
John Benediktsson
ceb75057da
change ERROR: words from throw-foo back to foo.
2015-08-13 16:13:05 -07:00
Doug Coleman
b6be8685c3
basis: ERROR: changes.
2015-08-13 03:20:39 -07:00
Doug Coleman
14ba179254
factor: change FUNCTION: and similar to not have trailing ;
2015-07-19 16:24:47 -07:00
John Benediktsson
c5e4bb4980
alien.parser: change scan-c-args to always use ";" as end-marker in preparation for maybe removing it later.
2015-07-19 15:08:56 -07:00
Doug Coleman
892c62e1dc
factor: second stab at [ ] [ ] unit-test -> { } [ ] unit-test
2015-07-03 09:39:59 -07:00
Doug Coleman
0124e630f0
alien.parser: add a couple of commas
2015-07-02 17:29:12 -07:00
Doug Coleman
59f3b1ea57
Revert "factor: rename [ ] [ ] unit-test -> { } [ ] unit-test using a refactoring tool!"
...
Needs a bit more work.
This reverts commit 7e54cc2824
.
2015-07-02 13:47:06 -07:00
Doug Coleman
7e54cc2824
factor: rename [ ] [ ] unit-test -> { } [ ] unit-test using a refactoring tool!
2015-07-02 11:36:08 -07:00
John Benediktsson
aa00d59d59
words: rename reset-props to remove-word-props.
2015-06-09 11:53:46 -07:00
Doug Coleman
6e60c811ac
core: Rename create to create-word, create-in to create-word-in.
2015-06-08 12:47:35 -07:00
John Benediktsson
74058d3dff
alien: cleanup using.
2014-11-16 20:31:32 -08:00
Doug Coleman
964cbf894b
core/basis: Trim or reorganize a few using lists. Playing around with auto-use restarts and private words.
2014-10-27 13:39:30 -07:00
Doug Coleman
5fab749dcc
words: Change word -> last-word, set-word -> set-last-word.
2013-03-23 16:12:03 -07:00
John Benediktsson
934b307ba2
make some predicates return t/f instead of something/f.
2012-07-29 10:52:46 -07:00
John Benediktsson
80e1c8e3f2
Eliminate duplicate syntax for stack effects "(" no longer drops and is identical to the old "((", which is now removed.
2011-10-18 13:19:39 -07:00
John Benediktsson
d61de12011
Cleanup more lint warnings.
2011-10-14 12:31:46 -07:00
John Benediktsson
378786599d
Cleanup lint warnings.
2011-10-14 11:47:24 -07:00
Doug Coleman
671f19d70f
Remove all non-core uses of (scan-token)
...
Add scan-datum
Add scan-number
Document more words
Fixes #225 .
2011-10-02 12:00:08 -07:00
Doug Coleman
76580da5d5
Refactor the lexer/parser to expose friendlier words for scanning tokens. The preferred top-level words now throw an exception on EOF.
...
CREATE -> scan-new
CREATE-CLASS -> scan-new-class
CREATE-WORD -> scan-new-word
CREATE-GENERIC -> scan-new-generic
scan -> (scan-token)
scan-token now throws on eof
(scan-word) returns word/number/f
scan-word now throws on eof
scan-word-name expects a non-number
Fixes #183 .
Fixes #209 .
2011-09-29 11:28:28 -07:00
Joe Groff
a820c1091d
alien: merge enum improvements from Blei/gtk-image-loader
2011-08-27 13:48:30 -07:00
Erik Charlebois
e28e48beea
Create a setter for C-GLOBAL words
2011-05-23 23:36:14 -04:00
Doug Coleman
3ac8847a15
Fix typo ohno
2010-09-29 17:29:28 -05:00
Doug Coleman
3cdc9ba650
Use create-class-in to get redefinition errors with enums
2010-09-29 16:24:25 -05:00
Slava Pestov
25ea734a8e
alien.parser: make int[3]* parse, make int[3][4 not parse
2010-08-15 02:37:17 -07:00
Slava Pestov
e8152e9098
alien.parser: array types where the base type was a pointer didn't parse (reported by Dmitry Shubin)
2010-08-15 02:32:12 -07:00
Slava Pestov
6142bd7335
alien.syntax: FUNCTION: and FUNCTION-ALIAS: now define inline words
2010-07-28 03:05:14 -04:00
Slava Pestov
8a0525e5ce
Add a scan-token word which is like scan, except throws an error on EOF; document scan-object word; mention that scan-token/scan-object are preferred over scan/scan-word
2010-07-06 16:20:08 -04:00
Slava Pestov
ba7cb61133
Stack allocation improvements
...
- New with-out-parameters combinator
- Inhibit tail call optimization in frames with local allocation, to ensure that passing a stack allocated value to the last word in the quotation works
- local allocations are now aligned properly
- spill slots are now aligned properly aligned in frames which have parameter and local allocation areas
2010-05-22 02:37:00 -04:00
Slava Pestov
de8e0ccd5c
alien.c-types: cleanup
2010-05-04 19:33:55 -04:00
Erik Charlebois
baab8c060d
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
d3f770d545
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
6e55a3b8f5
alien.parser, alien.syntax: send ENUM: body to parse-enum
2010-04-19 20:07:17 -07:00
Joe Groff
f394cb4fdc
alien.parser: have define-enum handle the case when the enum name is f
2010-04-19 20:07:17 -07:00
Joe Groff
8c915e05f7
alien.parser, alien.syntax: refactor ENUM: to separate parsing from definition
2010-04-19 20:07:17 -07:00
Joe Groff
d20bff5615
prettyprint FUNCTION-ALIAS: definitions
2010-04-14 12:40:10 -07:00
Joe Groff
e5c1a82643
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
becb7c78b7
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
edc489f4c1
Change C-ENUM: to always take a type. Use f for anonymous enums. Update all uses.
2010-04-09 23:48:22 -07:00