alien.debugger: this vocab isn't needed

The summary methods doesn't need dedicated vocabs. Unlike prettyprint methods.
char-rename
Björn Lindqvist 2016-08-13 15:49:33 +02:00
parent e3f6999519
commit b418b434fa
5 changed files with 13 additions and 15 deletions

View File

@ -1 +0,0 @@
Joe Groff

View File

@ -1,10 +0,0 @@
! Copyright (C) 2010 Joe Groff.
! See http://factorcode.org/license.txt for BSD license.
USING: accessors alien.c-types alien.parser prettyprint
sequences summary ;
IN: alien.debugger
M: no-c-type summary name>> unparse "“" "” is not a C type" surround ;
M: *-in-c-type-name summary
name>> "Cannot define a C type “" "” that ends with an asterisk (*)" surround ;

View File

@ -1,8 +1,8 @@
! (c)2009 Joe Groff bsd license
USING: accessors alien.c-types alien.parser alien.parser.private
alien.syntax compiler.units continuations debugger eval fry kernel
lexer namespaces parser sequences sets tools.test vocabs.parser words
;
lexer namespaces parser sequences sets summary tools.test
vocabs.parser words ;
IN: alien.parser.tests
<<
@ -46,6 +46,11 @@ IN: alien.parser.tests
{ "ayae" } [ parse-enum-name new-definitions get first in? ] with-parsing
] unit-test
! validate-c-type-name
{ "Cannot define a C type “hello*” that ends with an asterisk (*)" } [
[ "hello*" validate-c-type-name ] [ ] recover summary
] unit-test
>>
TYPEDEF: char char2

View File

@ -3,7 +3,7 @@
USING: accessors alien alien.c-types alien.enums alien.libraries
arrays classes classes.parser combinators combinators.short-circuit
compiler.units effects fry kernel lexer locals math namespaces parser
sequences splitting vocabs.parser words ;
sequences splitting summary vocabs.parser words ;
IN: alien.parser
SYMBOL: current-library
@ -54,6 +54,11 @@ ERROR: bad-array-type ;
ERROR: *-in-c-type-name name ;
M: *-in-c-type-name summary
name>>
"Cannot define a C type “"
"” that ends with an asterisk (*)" surround ;
: validate-c-type-name ( name -- name )
dup "*" tail?
[ *-in-c-type-name ] when ;

View File

@ -16,7 +16,6 @@ IN: bootstrap.compiler
] unless
{ "boostrap.compiler" "prettyprint" } "alien.prettyprint" require-when
{ "boostrap.compiler" "debugger" } "alien.debugger" require-when
"cpu." cpu name>> append require