Merge branch 'symbolic-enums' of git://github.com/erikcharlebois/factor

db4
Joe Groff 2010-04-20 16:43:58 -07:00
commit a848b4b0c5
46 changed files with 469 additions and 332 deletions

View File

@ -1,6 +1,6 @@
! Copyright (C) 2004, 2009 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
USING: byte-arrays arrays assocs kernel kernel.private math
USING: byte-arrays arrays assocs delegate kernel kernel.private math
math.order math.parser namespaces make parser sequences strings
words splitting cpu.architecture alien alien.accessors
alien.strings quotations layouts system compiler.units io
@ -79,74 +79,50 @@ GENERIC: c-type-class ( name -- class )
M: abstract-c-type c-type-class class>> ;
M: c-type-name c-type-class c-type c-type-class ;
GENERIC: c-type-boxed-class ( name -- class )
M: abstract-c-type c-type-boxed-class boxed-class>> ;
M: c-type-name c-type-boxed-class c-type c-type-boxed-class ;
GENERIC: c-type-boxer ( name -- boxer )
M: c-type c-type-boxer boxer>> ;
M: c-type-name c-type-boxer c-type c-type-boxer ;
GENERIC: c-type-boxer-quot ( name -- quot )
M: abstract-c-type c-type-boxer-quot boxer-quot>> ;
M: c-type-name c-type-boxer-quot c-type c-type-boxer-quot ;
GENERIC: c-type-unboxer ( name -- boxer )
M: c-type c-type-unboxer unboxer>> ;
M: c-type-name c-type-unboxer c-type c-type-unboxer ;
GENERIC: c-type-unboxer-quot ( name -- quot )
M: abstract-c-type c-type-unboxer-quot unboxer-quot>> ;
M: c-type-name c-type-unboxer-quot c-type c-type-unboxer-quot ;
GENERIC: c-type-rep ( name -- rep )
M: c-type c-type-rep rep>> ;
M: c-type-name c-type-rep c-type c-type-rep ;
GENERIC: c-type-getter ( name -- quot )
M: c-type c-type-getter getter>> ;
M: c-type-name c-type-getter c-type c-type-getter ;
GENERIC: c-type-setter ( name -- quot )
M: c-type c-type-setter setter>> ;
M: c-type-name c-type-setter c-type c-type-setter ;
GENERIC: c-type-align ( name -- n )
M: abstract-c-type c-type-align align>> ;
M: c-type-name c-type-align c-type c-type-align ;
GENERIC: c-type-align-first ( name -- n )
M: c-type-name c-type-align-first c-type c-type-align-first ;
M: abstract-c-type c-type-align-first align-first>> ;
GENERIC: c-type-stack-align? ( name -- ? )
M: c-type c-type-stack-align? stack-align?>> ;
M: c-type-name c-type-stack-align? c-type c-type-stack-align? ;
: c-type-box ( n c-type -- )
[ c-type-rep ] [ c-type-boxer [ "No boxer" throw ] unless* ] bi
%box ;
@ -159,38 +135,26 @@ GENERIC: box-parameter ( n c-type -- )
M: c-type box-parameter c-type-box ;
M: c-type-name box-parameter c-type box-parameter ;
GENERIC: box-return ( c-type -- )
M: c-type box-return f swap c-type-box ;
M: c-type-name box-return c-type box-return ;
GENERIC: unbox-parameter ( n c-type -- )
M: c-type unbox-parameter c-type-unbox ;
M: c-type-name unbox-parameter c-type unbox-parameter ;
GENERIC: unbox-return ( c-type -- )
M: c-type unbox-return f swap c-type-unbox ;
M: c-type-name unbox-return c-type unbox-return ;
: little-endian? ( -- ? ) 1 <int> *char 1 = ; foldable
GENERIC: heap-size ( name -- size )
M: c-type-name heap-size c-type heap-size ;
M: abstract-c-type heap-size size>> ;
GENERIC: stack-size ( name -- size )
M: c-type-name stack-size c-type stack-size ;
M: c-type stack-size size>> cell align ;
: >c-bool ( ? -- int ) 1 0 ? ; inline
@ -217,6 +181,29 @@ MIXIN: value-type
\ swap , [ heap-size , [ * >fixnum ] % ] [ % ] bi*
] [ ] make ;
PROTOCOL: c-type-protocol
c-type-class
c-type-boxed-class
c-type-boxer
c-type-boxer-quot
c-type-unboxer
c-type-unboxer-quot
c-type-rep
c-type-getter
c-type-setter
c-type-align
c-type-align-first
c-type-stack-align?
box-parameter
box-return
unbox-parameter
unbox-return
heap-size
stack-size ;
CONSULT: c-type-protocol c-type-name
c-type ;
PREDICATE: typedef-word < c-type-word
"c-type" word-prop c-type-name? ;

View File

@ -105,7 +105,7 @@ $nl
"Important guidelines for passing data in byte arrays:"
{ $subsections "byte-arrays-gc" }
"C-style enumerated types are supported:"
{ $subsections POSTPONE: C-ENUM: }
{ $subsections POSTPONE: ENUM: }
"C types can be aliased for convenience and consistency with native library documentation:"
{ $subsections POSTPONE: TYPEDEF: }
"A utility for defining " { $link "destructors" } " for deallocating memory:"

View File

@ -0,0 +1,30 @@
! Copyright (C) 2010 Erik Charlebois.
! See http://factorcode.org/license.txt for BSD license.
USING: alien.c-types help.markup help.syntax words ;
IN: alien.enums
HELP: define-enum
{ $values
{ "word" word } { "base-type" c-type } { "members" "sequence of word and value pairs" }
}
{ $description "Defines an enum. This is the run-time equivalent of ENUM:." } ;
HELP: enum>number
{ $values
{ "enum" "an enum word" }
{ "number" "the corresponding number value" }
}
{ $description "Converts an enum to a number." } ;
HELP: number>enum
{ $values
{ "number" "an enum number" } { "enum-c-type" "an enum type" }
{ "enum" "the corresponding enum word" }
}
{ $description "Convert a number to an enum." } ;
ARTICLE: "alien.enums" "alien.enums"
{ $vocab-link "alien.enums" }
;
ABOUT: "alien.enums"

View File

@ -0,0 +1,35 @@
! Copyright (C) 2010 Erik Charlebois.
! See http://factorcode.org/license.txt for BSD license.
USING: accessors alien.c-types alien.enums alien.enums.private
alien.syntax sequences tools.test words ;
IN: alien.enums.tests
ENUM: color_t red { green 3 } blue ;
ENUM: instrument_t < ushort trombone trumpet ;
{ { red green blue 5 } }
[ { 0 3 4 5 } [ <color_t> ] map ] unit-test
{ { 0 3 4 5 } }
[ { red green blue 5 } [ enum>number ] map ] unit-test
{ { -1 trombone trumpet } }
[ { -1 0 1 } [ <instrument_t> ] map ] unit-test
{ { -1 0 1 } }
[ { -1 trombone trumpet } [ enum>number ] map ] unit-test
{ t }
[ color_t "c-type" word-prop enum-c-type? ] unit-test
{ f }
[ ushort "c-type" word-prop enum-c-type? ] unit-test
{ int }
[ color_t "c-type" word-prop base-type>> ] unit-test
{ ushort }
[ instrument_t "c-type" word-prop base-type>> ] unit-test
{ V{ { red 0 } { green 3 } { blue 4 } } }
[ color_t "c-type" word-prop members>> ] unit-test

View File

@ -0,0 +1,55 @@
! (c)2010 Joe Groff, Erik Charlebois bsd license
USING: accessors alien.c-types arrays classes.singleton combinators
delegate fry generic.parser kernel math parser sequences words ;
IN: alien.enums
<PRIVATE
TUPLE: enum-c-type base-type members ;
C: <enum-c-type> enum-c-type
CONSULT: c-type-protocol enum-c-type
base-type>> ;
PRIVATE>
GENERIC: enum>number ( enum -- number )
M: integer enum>number ;
: number>enum ( number enum-c-type -- enum )
c-type-boxer-quot call( x -- y ) ; inline
<PRIVATE
: enum-boxer ( members -- quot )
[ first2 swap '[ _ ] 2array ]
{ } map-as [ ] suffix '[ _ case ] ;
PRIVATE>
M: enum-c-type c-type-boxed-class drop object ;
M: enum-c-type c-type-boxer-quot members>> enum-boxer ;
M: enum-c-type c-type-unboxer-quot drop [ enum>number ] ;
M: enum-c-type c-type-setter
[ enum>number ] swap base-type>> c-type-setter '[ _ 2dip @ ] ;
<PRIVATE
: define-enum>number ( class value -- )
[ \ enum>number create-method-in ]
[ '[ drop _ ] ] bi* define ;
: define-enum-members ( member-names -- )
[
[ first define-singleton-class ]
[ first2 define-enum>number ] bi
] each ;
: define-enum-constructor ( word -- )
[ name>> "<" ">" surround create-in ] keep
[ number>enum ] curry (( enum -- number )) define-inline ;
PRIVATE>
: define-enum ( word base-type members -- )
[ dup define-enum-constructor ] 2dip
dup define-enum-members
<enum-c-type> swap typedef ;
PREDICATE: enum-c-type-word < c-type-word
"c-type" word-prop enum-c-type? ;

View File

@ -75,19 +75,32 @@ M: pointer return-type-name to>> return-type-name CHAR: * suffix ;
"*" ?head
[ [ <pointer> ] dip parse-pointers ] when ;
: next-enum-member ( members name value -- members value' )
[ 2array suffix! ] [ 1 + ] bi ;
: parse-enum-name ( -- name )
scan (CREATE-C-TYPE) dup save-location ;
: parse-enum-base-type ( -- base-type token )
scan dup "<" =
[ drop scan-object scan ]
[ [ int ] dip ] if ;
: parse-enum-member ( members name value -- members value' )
over "{" =
[ 2drop scan create-in scan-object next-enum-member "}" expect ]
[ [ create-in ] dip next-enum-member ] if ;
: parse-enum-members ( members counter token -- members )
dup ";" = not
[ swap parse-enum-member scan parse-enum-members ] [ 2drop ] if ;
PRIVATE>
: define-enum-member ( word-string value -- next-value )
[ create-in ] dip [ define-constant ] keep 1 + ;
: parse-enum-member ( word-string value -- next-value )
over "{" =
[ 2drop scan scan-object define-enum-member "}" expect ]
[ define-enum-member ] if ;
: parse-enum-members ( counter -- )
scan dup ";" = not
[ swap parse-enum-member parse-enum-members ] [ 2drop ] if ;
: parse-enum ( -- name base-type members )
parse-enum-name
parse-enum-base-type
[ V{ } clone 0 ] dip parse-enum-members ;
: scan-function-name ( -- return function )
scan-c-type scan parse-pointers ;

View File

@ -1,9 +1,10 @@
! Copyright (C) 2008 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
USING: accessors kernel combinators alien alien.strings alien.c-types
alien.parser alien.syntax arrays assocs effects math.parser
prettyprint.backend prettyprint.custom prettyprint.sections
definitions see see.private sequences strings words ;
USING: accessors kernel combinators alien alien.enums
alien.strings alien.c-types alien.parser alien.syntax arrays
assocs effects math.parser prettyprint.backend prettyprint.custom
prettyprint.sections definitions see see.private sequences
strings words ;
IN: alien.prettyprint
M: alien pprint*
@ -110,3 +111,15 @@ M: alien-callback-type-word synopsis*
")" text block>
]
} cleave ;
M: enum-c-type-word definer
drop \ ENUM: \ ; ;
M: enum-c-type-word synopsis*
{
[ seeing-word ]
[ definer. ]
[ pprint-word ]
[ c-type base-type>> dup int eq? [ drop ] [ "<" text pprint-word ] if ]
} cleave ;
M: enum-c-type-word definition
c-type members>> ;

View File

@ -1,6 +1,6 @@
IN: alien.syntax
USING: alien alien.c-types alien.parser alien.libraries
classes.struct help.markup help.syntax see ;
USING: alien alien.c-types alien.enums alien.libraries classes.struct
help.markup help.syntax see ;
HELP: DLL"
{ $syntax "DLL\" path\"" }
@ -69,16 +69,15 @@ HELP: TYPEDEF:
{ $description "Aliases the C type " { $snippet "old" } " under the name " { $snippet "new" } "." }
{ $notes "This word differs from " { $link typedef } " in that it runs at parse time, to ensure correct ordering of operations when loading source files. Words defined in source files are compiled before top-level forms are run, so if a source file defines C binding words and uses " { $link typedef } ", the type alias won't be available at compile time." } ;
HELP: C-ENUM:
{ $syntax "C-ENUM: type/f words... ;" }
HELP: ENUM:
{ $syntax "ENUM: type words... ;" "ENUM: type < base-type words..." }
{ $values { "type" "a name to typedef to int or f" } { "words" "a sequence of word names" } }
{ $description "Creates a sequence of word definitions in the current vocabulary. Each word pushes an integer according to the rules of C enums." }
{ $notes "This word emulates a C-style " { $snippet "enum" } " in Factor. While this feature can be used for any purpose, using integer constants is discouraged unless it is for interfacing with C libraries. Factor code should use " { $link "words.symbol" } " or " { $link "singletons" } " instead." }
{ $description "Creates a c-type that boxes and unboxes integer values to singletons. A singleton is defined for each member word. The base c-type can optionally be specified and defaults to " { $snippet "int" } ". A constructor word " { $snippet "<type>" } " is defined for converting from integers to singletons. The generic word " { $link enum>number } " converts from singletons to integers. Enum-typed values are automatically prettyprinted as their singleton words. Unrecognizing enum numbers are kept as numbers." }
{ $examples
"Here is an example enumeration definition:"
{ $code "C-ENUM: color_t red { green 3 } blue ;" }
"It is equivalent to the following series of definitions:"
{ $code "CONSTANT: red 0" "CONSTANT: green 3" "CONSTANT: blue 4" }
{ $code "ENUM: color_t red { green 3 } blue ;" }
"The following expression returns true:"
{ $code "3 <color_t> [ green = ] [ enum>number 3 = ] bi and" }
} ;
HELP: C-TYPE:

View File

@ -1,6 +1,6 @@
! Copyright (C) 2005, 2010 Slava Pestov, Alex Chapman.
! See http://factorcode.org/license.txt for BSD license.
USING: accessors arrays alien alien.c-types alien.arrays
USING: accessors arrays alien alien.c-types alien.enums alien.arrays
alien.strings kernel math namespaces parser sequences words
quotations math.parser splitting grouping effects assocs
combinators lexer strings.parser alien.parser fry vocabs.parser
@ -28,11 +28,8 @@ SYNTAX: CALLBACK:
SYNTAX: TYPEDEF:
scan-c-type CREATE-C-TYPE dup save-location typedef ;
SYNTAX: C-ENUM:
scan dup "f" =
[ drop ]
[ (CREATE-C-TYPE) dup save-location int swap typedef ] if
0 parse-enum-members ;
SYNTAX: ENUM:
parse-enum define-enum ;
SYNTAX: C-TYPE:
void CREATE-C-TYPE typedef ;

View File

@ -46,7 +46,7 @@ TYPEDEF: void* cairo_destroy_func_t
STRUCT: cairo_user_data_key_t
{ unused int } ;
C-ENUM: cairo_status_t
ENUM: cairo_status_t
CAIRO_STATUS_SUCCESS
CAIRO_STATUS_NO_MEMORY
CAIRO_STATUS_INVALID_RESTORE
@ -126,7 +126,7 @@ FUNCTION: void
cairo_pop_group_to_source ( cairo_t* cr ) ;
! Modify state
C-ENUM: cairo_operator_t
ENUM: cairo_operator_t
CAIRO_OPERATOR_CLEAR
CAIRO_OPERATOR_SOURCE
@ -163,7 +163,7 @@ cairo_set_source_surface ( cairo_t* cr, cairo_surface_t* surface, double x, doub
FUNCTION: void
cairo_set_tolerance ( cairo_t* cr, double tolerance ) ;
C-ENUM: cairo_antialias_t
ENUM: cairo_antialias_t
CAIRO_ANTIALIAS_DEFAULT
CAIRO_ANTIALIAS_NONE
CAIRO_ANTIALIAS_GRAY
@ -172,7 +172,7 @@ C-ENUM: cairo_antialias_t
FUNCTION: void
cairo_set_antialias ( cairo_t* cr, cairo_antialias_t antialias ) ;
C-ENUM: cairo_fill_rule_t
ENUM: cairo_fill_rule_t
CAIRO_FILL_RULE_WINDING
CAIRO_FILL_RULE_EVEN_ODD ;
@ -182,7 +182,7 @@ cairo_set_fill_rule ( cairo_t* cr, cairo_fill_rule_t fill_rule ) ;
FUNCTION: void
cairo_set_line_width ( cairo_t* cr, double width ) ;
C-ENUM: cairo_line_cap_t
ENUM: cairo_line_cap_t
CAIRO_LINE_CAP_BUTT
CAIRO_LINE_CAP_ROUND
CAIRO_LINE_CAP_SQUARE ;
@ -190,7 +190,7 @@ C-ENUM: cairo_line_cap_t
FUNCTION: void
cairo_set_line_cap ( cairo_t* cr, cairo_line_cap_t line_cap ) ;
C-ENUM: cairo_line_join_t
ENUM: cairo_line_join_t
CAIRO_LINE_JOIN_MITER
CAIRO_LINE_JOIN_ROUND
CAIRO_LINE_JOIN_BEVEL ;
@ -375,30 +375,30 @@ STRUCT: cairo_font_extents_t
{ max_x_advance double }
{ max_y_advance double } ;
C-ENUM: cairo_font_slant_t
ENUM: cairo_font_slant_t
CAIRO_FONT_SLANT_NORMAL
CAIRO_FONT_SLANT_ITALIC
CAIRO_FONT_SLANT_OBLIQUE ;
C-ENUM: cairo_font_weight_t
ENUM: cairo_font_weight_t
CAIRO_FONT_WEIGHT_NORMAL
CAIRO_FONT_WEIGHT_BOLD ;
C-ENUM: cairo_subpixel_order_t
ENUM: cairo_subpixel_order_t
CAIRO_SUBPIXEL_ORDER_DEFAULT
CAIRO_SUBPIXEL_ORDER_RGB
CAIRO_SUBPIXEL_ORDER_BGR
CAIRO_SUBPIXEL_ORDER_VRGB
CAIRO_SUBPIXEL_ORDER_VBGR ;
C-ENUM: cairo_hint_style_t
ENUM: cairo_hint_style_t
CAIRO_HINT_STYLE_DEFAULT
CAIRO_HINT_STYLE_NONE
CAIRO_HINT_STYLE_SLIGHT
CAIRO_HINT_STYLE_MEDIUM
CAIRO_HINT_STYLE_FULL ;
C-ENUM: cairo_hint_metrics_t
ENUM: cairo_hint_metrics_t
CAIRO_HINT_METRICS_DEFAULT
CAIRO_HINT_METRICS_OFF
CAIRO_HINT_METRICS_ON ;
@ -518,7 +518,7 @@ cairo_font_face_get_reference_count ( cairo_font_face_t* font_face ) ;
FUNCTION: cairo_status_t
cairo_font_face_status ( cairo_font_face_t* font_face ) ;
C-ENUM: cairo_font_type_t
ENUM: cairo_font_type_t
CAIRO_FONT_TYPE_TOY
CAIRO_FONT_TYPE_FT
CAIRO_FONT_TYPE_WIN32
@ -630,7 +630,7 @@ cairo_get_target ( cairo_t* cr ) ;
FUNCTION: cairo_surface_t*
cairo_get_group_target ( cairo_t* cr ) ;
C-ENUM: cairo_path_data_type_t
ENUM: cairo_path_data_type_t
CAIRO_PATH_MOVE_TO
CAIRO_PATH_LINE_TO
CAIRO_PATH_CURVE_TO
@ -696,7 +696,7 @@ cairo_surface_get_reference_count ( cairo_surface_t* surface ) ;
FUNCTION: cairo_status_t
cairo_surface_status ( cairo_surface_t* surface ) ;
C-ENUM: cairo_surface_type_t
ENUM: cairo_surface_type_t
CAIRO_SURFACE_TYPE_IMAGE
CAIRO_SURFACE_TYPE_PDF
CAIRO_SURFACE_TYPE_PS
@ -759,7 +759,7 @@ cairo_surface_show_page ( cairo_surface_t* surface ) ;
! Image-surface functions
C-ENUM: cairo_format_t
ENUM: cairo_format_t
CAIRO_FORMAT_ARGB32
CAIRO_FORMAT_RGB24
CAIRO_FORMAT_A8
@ -831,7 +831,7 @@ cairo_pattern_get_user_data ( cairo_pattern_t* pattern, cairo_user_data_key_t* k
FUNCTION: cairo_status_t
cairo_pattern_set_user_data ( cairo_pattern_t* pattern, cairo_user_data_key_t* key, void* user_data, cairo_destroy_func_t destroy ) ;
C-ENUM: cairo_pattern_type_t
ENUM: cairo_pattern_type_t
CAIRO_PATTERN_TYPE_SOLID
CAIRO_PATTERN_TYPE_SURFACE
CAIRO_PATTERN_TYPE_LINEAR
@ -852,7 +852,7 @@ cairo_pattern_set_matrix ( cairo_pattern_t* pattern, cairo_matrix_t* matrix ) ;
FUNCTION: void
cairo_pattern_get_matrix ( cairo_pattern_t* pattern, cairo_matrix_t* matrix ) ;
C-ENUM: cairo_extend_t
ENUM: cairo_extend_t
CAIRO_EXTEND_NONE
CAIRO_EXTEND_REPEAT
CAIRO_EXTEND_REFLECT
@ -864,7 +864,7 @@ cairo_pattern_set_extend ( cairo_pattern_t* pattern, cairo_extend_t extend ) ;
FUNCTION: cairo_extend_t
cairo_pattern_get_extend ( cairo_pattern_t* pattern ) ;
C-ENUM: cairo_filter_t
ENUM: cairo_filter_t
CAIRO_FILTER_FAST
CAIRO_FILTER_GOOD
CAIRO_FILTER_BEST

View File

@ -8,10 +8,9 @@ IN: cocoa.application
: <NSString> ( str -- alien ) <CFString> -> autorelease ;
C-ENUM: f
NSApplicationDelegateReplySuccess
NSApplicationDelegateReplyCancel
NSApplicationDelegateReplyFailure ;
CONSTANT: NSApplicationDelegateReplySuccess 0
CONSTANT: NSApplicationDelegateReplyCancel 1
CONSTANT: NSApplicationDelegateReplyFailure 2
: with-autorelease-pool ( quot -- )
NSAutoreleasePool -> new [ call ] [ -> release ] bi* ; inline

View File

@ -1,7 +1,7 @@
! Copyright (C) 2008, 2010 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
USING: math kernel layouts system strings words quotations byte-arrays
alien alien.syntax arrays literals sequences ;
alien arrays literals sequences ;
IN: compiler.constants
! These constants must match vm/memory.h
@ -40,42 +40,40 @@ CONSTANT: deck-bits 18
: segment-end-offset ( -- n ) 2 bootstrap-cells ; inline
! Relocation classes
C-ENUM: f
rc-absolute-cell
rc-absolute
rc-relative
rc-absolute-ppc-2/2
rc-absolute-ppc-2
rc-relative-ppc-2
rc-relative-ppc-3
rc-relative-arm-3
rc-indirect-arm
rc-indirect-arm-pc
rc-absolute-2
rc-absolute-1 ;
CONSTANT: rc-absolute-cell 0
CONSTANT: rc-absolute 1
CONSTANT: rc-relative 2
CONSTANT: rc-absolute-ppc-2/2 3
CONSTANT: rc-absolute-ppc-2 4
CONSTANT: rc-relative-ppc-2 5
CONSTANT: rc-relative-ppc-3 6
CONSTANT: rc-relative-arm-3 7
CONSTANT: rc-indirect-arm 8
CONSTANT: rc-indirect-arm-pc 9
CONSTANT: rc-absolute-2 10
CONSTANT: rc-absolute-1 11
! Relocation types
C-ENUM: f
rt-dlsym
rt-entry-point
rt-entry-point-pic
rt-entry-point-pic-tail
rt-here
rt-this
rt-literal
rt-untagged
rt-megamorphic-cache-hits
rt-vm
rt-cards-offset
rt-decks-offset
rt-exception-handler
rt-float ;
CONSTANT: rt-dlsym 0
CONSTANT: rt-entry-point 1
CONSTANT: rt-entry-point-pic 2
CONSTANT: rt-entry-point-pic-tail 3
CONSTANT: rt-here 4
CONSTANT: rt-this 5
CONSTANT: rt-literal 6
CONSTANT: rt-untagged 7
CONSTANT: rt-megamorphic-cache-hits 8
CONSTANT: rt-vm 9
CONSTANT: rt-cards-offset 10
CONSTANT: rt-decks-offset 11
CONSTANT: rt-exception-handler 12
CONSTANT: rt-float 13
: rc-absolute? ( n -- ? )
${
rc-absolute-ppc-2/2
rc-absolute-cell
rc-absolute
rc-absolute-2
rc-absolute-1
$ rc-absolute-ppc-2/2
$ rc-absolute-cell
$ rc-absolute
$ rc-absolute-2
$ rc-absolute-1
} member? ;

View File

@ -6,14 +6,14 @@ images images.memory core-graphics.types core-foundation.utilities
opengl.gl literals ;
IN: core-graphics
C-ENUM: CGImageAlphaInfo
kCGImageAlphaNone
kCGImageAlphaPremultipliedLast
kCGImageAlphaPremultipliedFirst
kCGImageAlphaLast
kCGImageAlphaFirst
kCGImageAlphaNoneSkipLast
kCGImageAlphaNoneSkipFirst ;
TYPEDEF: int CGImageAlphaInfo
CONSTANT: kCGImageAlphaNone 0
CONSTANT: kCGImageAlphaPremultipliedLast 1
CONSTANT: kCGImageAlphaPremultipliedFirst 2
CONSTANT: kCGImageAlphaLast 3
CONSTANT: kCGImageAlphaFirst 4
CONSTANT: kCGImageAlphaNoneSkipLast 5
CONSTANT: kCGImageAlphaNoneSkipFirst 6
CONSTANT: kCGBitmapAlphaInfoMask HEX: 1f
CONSTANT: kCGBitmapFloatComponents 256

View File

@ -8,7 +8,7 @@ IN: pango.fonts
LIBRARY: pango
C-ENUM: PangoStyle
ENUM: PangoStyle
PANGO_STYLE_NORMAL
PANGO_STYLE_OBLIQUE
PANGO_STYLE_ITALIC ;

View File

@ -12,8 +12,19 @@ IN: unicode.breaks
<PRIVATE
! Grapheme breaks
C-ENUM: f Any L V T LV LVT Extend Control CR LF
SpacingMark Prepend graphemes ;
CONSTANT: Any 0
CONSTANT: L 1
CONSTANT: V 2
CONSTANT: T 3
CONSTANT: LV 4
CONSTANT: LVT 5
CONSTANT: Extend 6
CONSTANT: Control 7
CONSTANT: CR 8
CONSTANT: LF 9
CONSTANT: SpacingMark 10
CONSTANT: Prepend 11
CONSTANT: graphemes 12
: jamo-class ( ch -- class )
dup initial? [ drop L ]
@ -131,8 +142,20 @@ VALUE: word-break-table
"vocab:unicode/data/WordBreakProperty.txt" load-interval-file
to: word-break-table
C-ENUM: f wOther wCR wLF wNewline wExtend wFormat wKatakana wALetter wMidLetter
wMidNum wMidNumLet wNumeric wExtendNumLet words ;
CONSTANT: wOther 0
CONSTANT: wCR 1
CONSTANT: wLF 2
CONSTANT: wNewline 3
CONSTANT: wExtend 4
CONSTANT: wFormat 5
CONSTANT: wKatakana 6
CONSTANT: wALetter 7
CONSTANT: wMidLetter 8
CONSTANT: wMidNum 9
CONSTANT: wMidNumLet 10
CONSTANT: wNumeric 11
CONSTANT: wExtendNumLet 12
CONSTANT: words 13
: word-break-classes ( -- table ) ! Is there a way to avoid this?
H{

View File

@ -34,13 +34,12 @@ STRUCT: vm
: vm-field-offset ( field -- offset ) vm offset-of ; inline
C-ENUM: f
collect-nursery-op
collect-aging-op
collect-to-tenured-op
collect-full-op
collect-compact-op
collect-growing-heap-op ;
CONSTANT: collect-nursery-op 0
CONSTANT: collect-aging-op 1
CONSTANT: collect-to-tenured-op 2
CONSTANT: collect-full-op 3
CONSTANT: collect-compact-op 4
CONSTANT: collect-growing-heap-op 5
STRUCT: copying-sizes
{ size cell }

View File

@ -146,7 +146,7 @@ CONSTANT: TokenSessionReference 14
CONSTANT: TokenSandBoxInert 15
! } TOKEN_INFORMATION_CLASS;
C-ENUM: ACCESS_MODE
ENUM: ACCESS_MODE
NOT_USED_ACCESS
GRANT_ACCESS
SET_ACCESS
@ -155,18 +155,18 @@ C-ENUM: ACCESS_MODE
SET_AUDIT_SUCCESS
SET_AUDIT_FAILURE ;
C-ENUM: MULTIPLE_TRUSTEE_OPERATION
ENUM: MULTIPLE_TRUSTEE_OPERATION
NO_MULTIPLE_TRUSTEE
TRUSTEE_IS_IMPERSONATE ;
C-ENUM: TRUSTEE_FORM
ENUM: TRUSTEE_FORM
TRUSTEE_IS_SID
TRUSTEE_IS_NAME
TRUSTEE_BAD_FORM
TRUSTEE_IS_OBJECTS_AND_SID
TRUSTEE_IS_OBJECTS_AND_NAME ;
C-ENUM: TRUSTEE_TYPE
ENUM: TRUSTEE_TYPE
TRUSTEE_IS_UNKNOWN
TRUSTEE_IS_USER
TRUSTEE_IS_GROUP
@ -177,7 +177,7 @@ C-ENUM: TRUSTEE_TYPE
TRUSTEE_IS_INVALID
TRUSTEE_IS_COMPUTER ;
C-ENUM: SE_OBJECT_TYPE
ENUM: SE_OBJECT_TYPE
SE_UNKNOWN_OBJECT_TYPE
SE_FILE_OBJECT
SE_SERVICE

View File

@ -206,7 +206,7 @@ CONSTANT: HID_USAGE_DIGITIZER_BARREL_SWITCH HEX: 44
CONSTANT: HIDP_LINK_COLLECTION_ROOT -1
CONSTANT: HIDP_LINK_COLLECTION_UNSPECIFIED 0
C-ENUM: HIDP_REPORT_TYPE
ENUM: HIDP_REPORT_TYPE
HidP_Input
HidP_Output
HidP_Feature ;
@ -607,7 +607,7 @@ HidP_UsageAndPageListDifference (
ULONG UsageListLength
) ;
C-ENUM: HIDP_KEYBOARD_DIRECTION
ENUM: HIDP_KEYBOARD_DIRECTION
HidP_Keyboard_Break
HidP_Keyboard_Make ;

View File

@ -1516,7 +1516,7 @@ FUNCTION: BOOL SetupRemoveFileLogEntryA ( HSPFILELOG FileLogHandle, PCSTR LogSec
FUNCTION: BOOL SetupRemoveFileLogEntryW ( HSPFILELOG FileLogHandle, PCWSTR LogSectionName, PCWSTR TargetFilename ) ;
ALIAS: SetupRemoveFileLogEntry SetupRemoveFileLogEntryW
C-ENUM: SetupFileLogInfo
ENUM: SetupFileLogInfo
SetupFileLogSourceFilename
SetupFileLogChecksum
SetupFileLogDiskTagfile

View File

@ -22,7 +22,7 @@ STRUCT: USB_INTERFACE_DESCRIPTOR
{ iInterface UCHAR } ;
TYPEDEF: USB_INTERFACE_DESCRIPTOR* PUSB_INTERFACE_DESCRIPTOR
C-ENUM: USBD_PIPE_TYPE
ENUM: USBD_PIPE_TYPE
UsbdPipeTypeControl
UsbdPipeTypeIsochronous
UsbdPipeTypeBulk

View File

@ -24,7 +24,7 @@ CONSTANT: D3D11_RETURN_TYPE_DOUBLE 7
CONSTANT: D3D11_RETURN_TYPE_CONTINUED 8
TYPEDEF: int D3D11_RESOURCE_RETURN_TYPE
C-ENUM: D3D11_CBUFFER_TYPE
ENUM: D3D11_CBUFFER_TYPE
D3D11_CT_CBUFFER
D3D11_CT_TBUFFER
D3D11_CT_INTERFACE_POINTERS

View File

@ -502,7 +502,7 @@ CONSTANT: MAXD3DDECLUSAGE 13
CONSTANT: MAXD3DDECLUSAGEINDEX 15
CONSTANT: MAXD3DDECLLENGTH 64
C-ENUM: D3DDECLMETHOD
ENUM: D3DDECLMETHOD
D3DDECLMETHOD_DEFAULT
D3DDECLMETHOD_PARTIALU
D3DDECLMETHOD_PARTIALV

View File

@ -48,7 +48,7 @@ COM-INTERFACE: ID3DX11FFT IUnknown {b3f7a938-4c93-4310-a675-b30d6de50553}
HRESULT ForwardTransform ( ID3D11UnorderedAccessView* pInputBuffer, ID3D11UnorderedAccessView** ppOutputBuffer )
HRESULT InverseTransform ( ID3D11UnorderedAccessView* pInputBuffer, ID3D11UnorderedAccessView** ppOutputBuffer ) ;
C-ENUM: D3DX11_FFT_DATA_TYPE
ENUM: D3DX11_FFT_DATA_TYPE
D3DX11_FFT_DATA_TYPE_REAL
D3DX11_FFT_DATA_TYPE_COMPLEX ;

View File

@ -41,14 +41,14 @@ STRUCT: D3DXSEMANTIC
{ UsageIndex UINT } ;
TYPEDEF: D3DXSEMANTIC* LPD3DXSEMANTIC
C-ENUM: D3DXREGISTER_SET
ENUM: D3DXREGISTER_SET
D3DXRS_BOOL
D3DXRS_INT4
D3DXRS_FLOAT4
D3DXRS_SAMPLER ;
TYPEDEF: D3DXREGISTER_SET* LPD3DXREGISTER_SET
C-ENUM: D3DXPARAMETER_CLASS
ENUM: D3DXPARAMETER_CLASS
D3DXPC_SCALAR
D3DXPC_VECTOR
D3DXPC_MATRIX_ROWS
@ -57,7 +57,7 @@ C-ENUM: D3DXPARAMETER_CLASS
D3DXPC_STRUCT ;
TYPEDEF: D3DXPARAMETER_CLASS* LPD3DXPARAMETER_CLASS
C-ENUM: D3DXPARAMETER_TYPE
ENUM: D3DXPARAMETER_TYPE
D3DXPT_VOID
D3DXPT_BOOL
D3DXPT_INT
@ -158,7 +158,7 @@ COM-INTERFACE: ID3DXTextureShader IUnknown {3E3D67F8-AA7A-405d-A857-BA01D4758426
HRESULT SetMatrixTransposeArray ( D3DXHANDLE hConstant, D3DXMATRIX* pMatrix, UINT Count )
HRESULT SetMatrixTransposePointerArray ( D3DXHANDLE hConstant, D3DXMATRIX** ppMatrix, UINT Count ) ;
C-ENUM: D3DXINCLUDE_TYPE
ENUM: D3DXINCLUDE_TYPE
D3DXINC_LOCAL
D3DXINC_SYSTEM ;
TYPEDEF: D3DXINCLUDE_TYPE* LPD3DXINCLUDE_TYPE

View File

@ -1,7 +1,7 @@
USING: alien.c-types alien.syntax ;
IN: windows.directx.dcommon
C-ENUM: DWRITE_MEASURING_MODE
ENUM: DWRITE_MEASURING_MODE
DWRITE_MEASURING_MODE_NATURAL
DWRITE_MEASURING_MODE_GDI_CLASSIC
DWRITE_MEASURING_MODE_GDI_NATURAL ;

View File

@ -5,7 +5,7 @@ IN: windows.directx.dwrite
LIBRARY: dwrite
C-ENUM: DWRITE_FONT_FILE_TYPE
ENUM: DWRITE_FONT_FILE_TYPE
DWRITE_FONT_FILE_TYPE_UNKNOWN
DWRITE_FONT_FILE_TYPE_CFF
DWRITE_FONT_FILE_TYPE_TRUETYPE
@ -15,7 +15,7 @@ C-ENUM: DWRITE_FONT_FILE_TYPE
DWRITE_FONT_FILE_TYPE_VECTOR
DWRITE_FONT_FILE_TYPE_BITMAP ;
C-ENUM: DWRITE_FONT_FACE_TYPE
ENUM: DWRITE_FONT_FACE_TYPE
DWRITE_FONT_FACE_TYPE_CFF
DWRITE_FONT_FACE_TYPE_TRUETYPE
DWRITE_FONT_FACE_TYPE_TRUETYPE_COLLECTION
@ -24,12 +24,12 @@ C-ENUM: DWRITE_FONT_FACE_TYPE
DWRITE_FONT_FACE_TYPE_BITMAP
DWRITE_FONT_FACE_TYPE_UNKNOWN ;
C-ENUM: DWRITE_FONT_SIMULATIONS
ENUM: DWRITE_FONT_SIMULATIONS
DWRITE_FONT_SIMULATIONS_NONE
DWRITE_FONT_SIMULATIONS_BOLD
DWRITE_FONT_SIMULATIONS_OBLIQUE ;
C-ENUM: DWRITE_FONT_WEIGHT
ENUM: DWRITE_FONT_WEIGHT
{ DWRITE_FONT_WEIGHT_THIN 100 }
{ DWRITE_FONT_WEIGHT_EXTRA_LIGHT 200 }
{ DWRITE_FONT_WEIGHT_ULTRA_LIGHT 200 }
@ -47,7 +47,7 @@ C-ENUM: DWRITE_FONT_WEIGHT
{ DWRITE_FONT_WEIGHT_EXTRA_BLACK 950 }
{ DWRITE_FONT_WEIGHT_ULTRA_BLACK 950 } ;
C-ENUM: DWRITE_FONT_STRETCH
ENUM: DWRITE_FONT_STRETCH
{ DWRITE_FONT_STRETCH_UNDEFINED 0 }
{ DWRITE_FONT_STRETCH_ULTRA_CONDENSED 1 }
{ DWRITE_FONT_STRETCH_EXTRA_CONDENSED 2 }
@ -60,12 +60,12 @@ C-ENUM: DWRITE_FONT_STRETCH
{ DWRITE_FONT_STRETCH_EXTRA_EXPANDED 8 }
{ DWRITE_FONT_STRETCH_ULTRA_EXPANDED 9 } ;
C-ENUM: DWRITE_FONT_STYLE
ENUM: DWRITE_FONT_STYLE
DWRITE_FONT_STYLE_NORMAL
DWRITE_FONT_STYLE_OBLIQUE
DWRITE_FONT_STYLE_ITALIC ;
C-ENUM: DWRITE_INFORMATIONAL_STRING_ID
ENUM: DWRITE_INFORMATIONAL_STRING_ID
DWRITE_INFORMATIONAL_STRING_NONE
DWRITE_INFORMATIONAL_STRING_COPYRIGHT_NOTICE
DWRITE_INFORMATIONAL_STRING_VERSION_STRINGS
@ -108,7 +108,7 @@ STRUCT: DWRITE_GLYPH_OFFSET
{ advanceOffset FLOAT }
{ ascenderOffset FLOAT } ;
C-ENUM: DWRITE_FACTORY_TYPE
ENUM: DWRITE_FACTORY_TYPE
DWRITE_FACTORY_TYPE_SHARED
DWRITE_FACTORY_TYPE_ISOLATED ;
@ -133,12 +133,12 @@ COM-INTERFACE: IDWriteFontFile IUnknown {739d886a-cef5-47dc-8769-1a8b41bebbb0}
HRESULT GetLoader ( IDWriteFontFileLoader** fontFileLoader )
HRESULT Analyze ( BOOL* isSupportedFontType, DWRITE_FONT_FILE_TYPE* fontFileType, DWRITE_FONT_FACE_TYPE* fontFaceType, UINT32* numberOfFaces ) ;
C-ENUM: DWRITE_PIXEL_GEOMETRY
ENUM: DWRITE_PIXEL_GEOMETRY
DWRITE_PIXEL_GEOMETRY_FLAT
DWRITE_PIXEL_GEOMETRY_RGB
DWRITE_PIXEL_GEOMETRY_BGR ;
C-ENUM: DWRITE_RENDERING_MODE
ENUM: DWRITE_RENDERING_MODE
DWRITE_RENDERING_MODE_DEFAULT
DWRITE_RENDERING_MODE_ALIASED
DWRITE_RENDERING_MODE_CLEARTYPE_GDI_CLASSIC
@ -233,32 +233,32 @@ COM-INTERFACE: IDWriteFont IUnknown {acd16696-8c14-4f5d-877e-fe3fc1d32737}
HRESULT HasCharacter ( UINT32 unicodeValue, BOOL* exists )
HRESULT CreateFontFace ( IDWriteFontFace** fontFace ) ;
C-ENUM: DWRITE_READING_DIRECTION
ENUM: DWRITE_READING_DIRECTION
DWRITE_READING_DIRECTION_LEFT_TO_RIGHT
DWRITE_READING_DIRECTION_RIGHT_TO_LEFT ;
C-ENUM: DWRITE_FLOW_DIRECTION
ENUM: DWRITE_FLOW_DIRECTION
DWRITE_FLOW_DIRECTION_TOP_TO_BOTTOM ;
C-ENUM: DWRITE_TEXT_ALIGNMENT
ENUM: DWRITE_TEXT_ALIGNMENT
DWRITE_TEXT_ALIGNMENT_LEADING
DWRITE_TEXT_ALIGNMENT_TRAILING
DWRITE_TEXT_ALIGNMENT_CENTER ;
C-ENUM: DWRITE_PARAGRAPH_ALIGNMENT
ENUM: DWRITE_PARAGRAPH_ALIGNMENT
DWRITE_PARAGRAPH_ALIGNMENT_NEAR
DWRITE_PARAGRAPH_ALIGNMENT_FAR
DWRITE_PARAGRAPH_ALIGNMENT_CENTER ;
C-ENUM: DWRITE_WORD_WRAPPING
ENUM: DWRITE_WORD_WRAPPING
DWRITE_WORD_WRAPPING_WRAP
DWRITE_WORD_WRAPPING_NO_WRAP ;
C-ENUM: DWRITE_LINE_SPACING_METHOD
ENUM: DWRITE_LINE_SPACING_METHOD
DWRITE_LINE_SPACING_METHOD_DEFAULT
DWRITE_LINE_SPACING_METHOD_UNIFORM ;
C-ENUM: DWRITE_TRIMMING_GRANULARITY
ENUM: DWRITE_TRIMMING_GRANULARITY
DWRITE_TRIMMING_GRANULARITY_NONE
DWRITE_TRIMMING_GRANULARITY_CHARACTER
DWRITE_TRIMMING_GRANULARITY_WORD ;
@ -396,7 +396,7 @@ COM-INTERFACE: IDWriteTypography IUnknown {55f1112b-1dc2-4b3c-9541-f46894ed85b6}
UINT32 GetFontFeatureCount ( )
HRESULT GetFontFeature ( UINT32 fontFeatureIndex, DWRITE_FONT_FEATURE* fontFeature ) ;
C-ENUM: DWRITE_SCRIPT_SHAPES
ENUM: DWRITE_SCRIPT_SHAPES
DWRITE_SCRIPT_SHAPES_DEFAULT
DWRITE_SCRIPT_SHAPES_NO_VISUAL ;
@ -404,7 +404,7 @@ STRUCT: DWRITE_SCRIPT_ANALYSIS
{ script USHORT }
{ shapes DWRITE_SCRIPT_SHAPES } ;
C-ENUM: DWRITE_BREAK_CONDITION
ENUM: DWRITE_BREAK_CONDITION
DWRITE_BREAK_CONDITION_NEUTRAL
DWRITE_BREAK_CONDITION_CAN_BREAK
DWRITE_BREAK_CONDITION_MAY_NOT_BREAK
@ -413,7 +413,7 @@ C-ENUM: DWRITE_BREAK_CONDITION
STRUCT: DWRITE_LINE_BREAKPOINT
{ data BYTE } ;
C-ENUM: DWRITE_NUMBER_SUBSTITUTION_METHOD
ENUM: DWRITE_NUMBER_SUBSTITUTION_METHOD
DWRITE_NUMBER_SUBSTITUTION_METHOD_FROM_CULTURE
DWRITE_NUMBER_SUBSTITUTION_METHOD_CONTEXTUAL
DWRITE_NUMBER_SUBSTITUTION_METHOD_NONE
@ -612,7 +612,7 @@ COM-INTERFACE: IDWriteGdiInterop IUnknown {1edd9491-9853-4299-898f-6432983b6f3a}
HRESULT CreateFontFaceFromHdc ( HDC hdc, IDWriteFontFace** fontFace )
HRESULT CreateBitmapRenderTarget ( HDC hdc, UINT32 width, UINT32 height, IDWriteBitmapRenderTarget** renderTarget ) ;
C-ENUM: DWRITE_TEXTURE_TYPE
ENUM: DWRITE_TEXTURE_TYPE
DWRITE_TEXTURE_ALIASED_1x1
DWRITE_TEXTURE_CLEARTYPE_3x1 ;

View File

@ -47,18 +47,18 @@ STRUCT: DXGI_RATIONAL
{ Numerator UINT }
{ Denominator UINT } ;
C-ENUM: DXGI_MODE_SCANLINE_ORDER
ENUM: DXGI_MODE_SCANLINE_ORDER
DXGI_MODE_SCANLINE_ORDER_UNSPECIFIED
DXGI_MODE_SCANLINE_ORDER_PROGRESSIVE
DXGI_MODE_SCANLINE_ORDER_UPPER_FIELD_FIRST
DXGI_MODE_SCANLINE_ORDER_LOWER_FIELD_FIRST ;
C-ENUM: DXGI_MODE_SCALING
ENUM: DXGI_MODE_SCALING
DXGI_MODE_SCALING_UNSPECIFIED
DXGI_MODE_SCALING_CENTERED
DXGI_MODE_SCALING_STRETCHED ;
C-ENUM: DXGI_MODE_ROTATION
ENUM: DXGI_MODE_ROTATION
DXGI_MODE_ROTATION_UNSPECIFIED
DXGI_MODE_ROTATION_IDENTITY
DXGI_MODE_ROTATION_ROTATE90

View File

@ -39,7 +39,7 @@ STRUCT: XAPO_LOCKFORPROCESS_BUFFER_PARAMETERS
{ pFormat WAVEFORMATEX* }
{ MaxFrameCount UINT32 } ;
C-ENUM: XAPO_BUFFER_FLAGS
ENUM: XAPO_BUFFER_FLAGS
XAPO_BUFFER_SILENT
XAPO_BUFFER_VALID ;

View File

@ -133,7 +133,7 @@ STRUCT: XAUDIO2_EFFECT_CHAIN
{ EffectCount UINT32 }
{ pEffectDescriptors XAUDIO2_EFFECT_DESCRIPTOR* } ;
C-ENUM: XAUDIO2_FILTER_TYPE
ENUM: XAUDIO2_FILTER_TYPE
LowPassFilter
BandPassFilter
HighPassFilter

View File

@ -199,7 +199,7 @@ CONSTANT: THREAD_PRIORITY_LOWEST -2
CONSTANT: THREAD_PRIORITY_NORMAL 0
CONSTANT: THREAD_PRIORITY_TIME_CRITICAL 15
C-ENUM: COMPUTER_NAME_FORMAT
ENUM: COMPUTER_NAME_FORMAT
ComputerNameNetBIOS
ComputerNameDnsHostname
ComputerNameDnsDomain

View File

@ -37,23 +37,22 @@ FUNCTION: HRESULT ScriptLayout (
int* piLogicalToVisual
) ;
C-ENUM: f
SCRIPT_JUSTIFY_NONE
SCRIPT_JUSTIFY_ARABIC_BLANK
SCRIPT_JUSTIFY_CHARACTER
SCRIPT_JUSTIFY_RESERVED1
SCRIPT_JUSTIFY_BLANK
SCRIPT_JUSTIFY_RESERVED2
SCRIPT_JUSTIFY_RESERVED3
SCRIPT_JUSTIFY_ARABIC_NORMAL
SCRIPT_JUSTIFY_ARABIC_KASHIDA
SCRIPT_JUSTIFY_ALEF
SCRIPT_JUSTIFY_HA
SCRIPT_JUSTIFY_RA
SCRIPT_JUSTIFY_BA
SCRIPT_JUSTIFY_BARA
SCRIPT_JUSTIFY_SEEN
SCRIPT_JUSTIFFY_RESERVED4 ;
CONSTANT: SCRIPT_JUSTIFY_NONE 0
CONSTANT: SCRIPT_JUSTIFY_ARABIC_BLANK 1
CONSTANT: SCRIPT_JUSTIFY_CHARACTER 2
CONSTANT: SCRIPT_JUSTIFY_RESERVED1 3
CONSTANT: SCRIPT_JUSTIFY_BLANK 4
CONSTANT: SCRIPT_JUSTIFY_RESERVED2 5
CONSTANT: SCRIPT_JUSTIFY_RESERVED3 6
CONSTANT: SCRIPT_JUSTIFY_ARABIC_NORMAL 7
CONSTANT: SCRIPT_JUSTIFY_ARABIC_KASHIDA 8
CONSTANT: SCRIPT_JUSTIFY_ALEF 9
CONSTANT: SCRIPT_JUSTIFY_HA 10
CONSTANT: SCRIPT_JUSTIFY_RA 11
CONSTANT: SCRIPT_JUSTIFY_BA 12
CONSTANT: SCRIPT_JUSTIFY_BARA 13
CONSTANT: SCRIPT_JUSTIFY_SEEN 14
CONSTANT: SCRIPT_JUSTIFFY_RESERVED4 15
STRUCT: SCRIPT_VISATTR
{ flags WORD } ;

View File

@ -406,4 +406,6 @@ CONSTANT: MSBFirst 1
! * EXTENDED WINDOW MANAGER HINTS
! *****************************************************************
C-ENUM: f _NET_WM_STATE_REMOVE _NET_WM_STATE_ADD _NET_WM_STATE_TOGGLE ;
CONSTANT: _NET_WM_STATE_REMOVE 0
CONSTANT: _NET_WM_STATE_ADD 1
CONSTANT: _NET_WM_STATE_TOGGLE 2

View File

@ -349,7 +349,7 @@ STRUCT: cpSegmentQueryInfo
{ t cpFloat }
{ n cpVect } ;
C-ENUM: cpShapeType
ENUM: cpShapeType
CP_CIRCLE_SHAPE
CP_SEGMENT_SHAPE
CP_POLY_SHAPE
@ -482,7 +482,7 @@ STRUCT: cpContact
FUNCTION: cpContact* cpContactInit ( cpContact* con, cpVect p, cpVect n, cpFloat dist, cpHashValue hash ) ;
C-ENUM: cpArbiterState
ENUM: cpArbiterState
cpArbiterStateNormal
cpArbiterStateFirstColl
cpArbiterStateIgnore ;

View File

@ -49,7 +49,7 @@ double c-type clone always-8-byte-align \ CUdouble typedef
STRUCT: CUuuid
{ bytes char[16] } ;
C-ENUM: CUctx_flags
ENUM: CUctx_flags
{ CU_CTX_SCHED_AUTO 0 }
{ CU_CTX_SCHED_SPIN 1 }
{ CU_CTX_SCHED_YIELD 2 }
@ -59,11 +59,11 @@ C-ENUM: CUctx_flags
{ CU_CTX_LMEM_RESIZE_TO_MAX 16 }
{ CU_CTX_FLAGS_MASK HEX: 1f } ;
C-ENUM: CUevent_flags
ENUM: CUevent_flags
{ CU_EVENT_DEFAULT 0 }
{ CU_EVENT_BLOCKING_SYNC 1 } ;
C-ENUM: CUarray_format
ENUM: CUarray_format
{ CU_AD_FORMAT_UNSIGNED_INT8 HEX: 01 }
{ CU_AD_FORMAT_UNSIGNED_INT16 HEX: 02 }
{ CU_AD_FORMAT_UNSIGNED_INT32 HEX: 03 }
@ -73,16 +73,16 @@ C-ENUM: CUarray_format
{ CU_AD_FORMAT_HALF HEX: 10 }
{ CU_AD_FORMAT_FLOAT HEX: 20 } ;
C-ENUM: CUaddress_mode
ENUM: CUaddress_mode
{ CU_TR_ADDRESS_MODE_WRAP 0 }
{ CU_TR_ADDRESS_MODE_CLAMP 1 }
{ CU_TR_ADDRESS_MODE_MIRROR 2 } ;
C-ENUM: CUfilter_mode
ENUM: CUfilter_mode
{ CU_TR_FILTER_MODE_POINT 0 }
{ CU_TR_FILTER_MODE_LINEAR 1 } ;
C-ENUM: CUdevice_attribute
ENUM: CUdevice_attribute
{ CU_DEVICE_ATTRIBUTE_MAX_THREADS_PER_BLOCK 1 }
{ CU_DEVICE_ATTRIBUTE_MAX_BLOCK_DIM_X 2 }
{ CU_DEVICE_ATTRIBUTE_MAX_BLOCK_DIM_Y 3 }
@ -131,7 +131,7 @@ STRUCT: CUdevprop
{ clockRate int }
{ textureAlign int } ;
C-ENUM: CUfunction_attribute
ENUM: CUfunction_attribute
{ CU_FUNC_ATTRIBUTE_MAX_THREADS_PER_BLOCK 0 }
{ CU_FUNC_ATTRIBUTE_SHARED_SIZE_BYTES 1 }
{ CU_FUNC_ATTRIBUTE_CONST_SIZE_BYTES 2 }
@ -141,22 +141,22 @@ C-ENUM: CUfunction_attribute
{ CU_FUNC_ATTRIBUTE_BINARY_VERSION 6 }
CU_FUNC_ATTRIBUTE_MAX ;
C-ENUM: CUfunc_cache
ENUM: CUfunc_cache
{ CU_FUNC_CACHE_PREFER_NONE HEX: 00 }
{ CU_FUNC_CACHE_PREFER_SHARED HEX: 01 }
{ CU_FUNC_CACHE_PREFER_L1 HEX: 02 } ;
C-ENUM: CUmemorytype
ENUM: CUmemorytype
{ CU_MEMORYTYPE_HOST HEX: 01 }
{ CU_MEMORYTYPE_DEVICE HEX: 02 }
{ CU_MEMORYTYPE_ARRAY HEX: 03 } ;
C-ENUM: CUcomputemode
ENUM: CUcomputemode
{ CU_COMPUTEMODE_DEFAULT 0 }
{ CU_COMPUTEMODE_EXCLUSIVE 1 }
{ CU_COMPUTEMODE_PROHIBITED 2 } ;
C-ENUM: CUjit_option
ENUM: CUjit_option
{ CU_JIT_MAX_REGISTERS 0 }
CU_JIT_THREADS_PER_BLOCK
CU_JIT_WALL_TIME
@ -169,26 +169,26 @@ C-ENUM: CUjit_option
CU_JIT_TARGET
CU_JIT_FALLBACK_STRATEGY ;
C-ENUM: CUjit_target
ENUM: CUjit_target
{ CU_TARGET_COMPUTE_10 0 }
CU_TARGET_COMPUTE_11
CU_TARGET_COMPUTE_12
CU_TARGET_COMPUTE_13
CU_TARGET_COMPUTE_20 ;
C-ENUM: CUjit_fallback
ENUM: CUjit_fallback
{ CU_PREFER_PTX 0 }
CU_PREFER_BINARY ;
C-ENUM: CUgraphicsRegisterFlags
ENUM: CUgraphicsRegisterFlags
{ CU_GRAPHICS_REGISTER_FLAGS_NONE 0 } ;
C-ENUM: CUgraphicsMapResourceFlags
ENUM: CUgraphicsMapResourceFlags
{ CU_GRAPHICS_MAP_RESOURCE_FLAGS_NONE HEX: 00 }
{ CU_GRAPHICS_MAP_RESOURCE_FLAGS_READ_ONLY HEX: 01 }
{ CU_GRAPHICS_MAP_RESOURCE_FLAGS_WRITE_DISCARD HEX: 02 } ;
C-ENUM: CUarray_cubemap_face
ENUM: CUarray_cubemap_face
{ CU_CUBEMAP_FACE_POSITIVE_X HEX: 00 }
{ CU_CUBEMAP_FACE_NEGATIVE_X HEX: 01 }
{ CU_CUBEMAP_FACE_POSITIVE_Y HEX: 02 }
@ -196,7 +196,7 @@ C-ENUM: CUarray_cubemap_face
{ CU_CUBEMAP_FACE_POSITIVE_Z HEX: 04 }
{ CU_CUBEMAP_FACE_NEGATIVE_Z HEX: 05 } ;
C-ENUM: CUresult
ENUM: CUresult
{ CUDA_SUCCESS 0 }
{ CUDA_ERROR_INVALID_VALUE 1 }
{ CUDA_ERROR_OUT_OF_MEMORY 2 }

View File

@ -176,21 +176,19 @@ FUNCTION: FT_Error FT_Set_Char_Size ( face* face, FT_F26Dot6 char_width, FT_F26D
FUNCTION: FT_Error FT_Load_Char ( face* face, FT_ULong charcode, FT_Int32 load_flags ) ;
C-ENUM: f
FT_RENDER_MODE_NORMAL
FT_RENDER_MODE_LIGHT
FT_RENDER_MODE_MONO
FT_RENDER_MODE_LCD
FT_RENDER_MODE_LCD_V ;
CONSTANT: FT_RENDER_MODE_NORMAL 0
CONSTANT: FT_RENDER_MODE_LIGHT 1
CONSTANT: FT_RENDER_MODE_MONO 2
CONSTANT: FT_RENDER_MODE_LCD 3
CONSTANT: FT_RENDER_MODE_LCD_V 4
C-ENUM: f
FT_PIXEL_MODE_NONE
FT_PIXEL_MODE_MONO
FT_PIXEL_MODE_GRAY
FT_PIXEL_MODE_GRAY2
FT_PIXEL_MODE_GRAY4
FT_PIXEL_MODE_LCD
FT_PIXEL_MODE_LCD_V ;
CONSTANT: FT_PIXEL_MODE_NONE 0
CONSTANT: FT_PIXEL_MODE_MONO 1
CONSTANT: FT_PIXEL_MODE_GRAY 2
CONSTANT: FT_PIXEL_MODE_GRAY2 3
CONSTANT: FT_PIXEL_MODE_GRAY4 4
CONSTANT: FT_PIXEL_MODE_LCD 5
CONSTANT: FT_PIXEL_MODE_LCD_V 6
FUNCTION: int FT_Render_Glyph ( glyph* slot, int render_mode ) ;

View File

@ -19,7 +19,7 @@ LIBRARY: libusb
ALIAS: libusb_le16_to_cpu libusb_cpu_to_le16
C-ENUM: libusb_class_code
ENUM: libusb_class_code
{ LIBUSB_CLASS_PER_INTERFACE 0 }
{ LIBUSB_CLASS_AUDIO 1 }
{ LIBUSB_CLASS_COMM 2 }
@ -31,7 +31,7 @@ C-ENUM: libusb_class_code
{ LIBUSB_CLASS_DATA 10 }
{ LIBUSB_CLASS_VENDOR_SPEC HEX: ff } ;
C-ENUM: libusb_descriptor_type
ENUM: libusb_descriptor_type
{ LIBUSB_DT_DEVICE HEX: 01 }
{ LIBUSB_DT_CONFIG HEX: 02 }
{ LIBUSB_DT_STRING HEX: 03 }
@ -52,19 +52,19 @@ CONSTANT: LIBUSB_DT_HUB_NONVAR_SIZE 7
CONSTANT: LIBUSB_ENDPOINT_ADDRESS_MASK HEX: 0f
CONSTANT: LIBUSB_ENDPOINT_DIR_MASK HEX: 80
C-ENUM: libusb_endpoint_direction
ENUM: libusb_endpoint_direction
{ LIBUSB_ENDPOINT_IN HEX: 80 }
{ LIBUSB_ENDPOINT_OUT HEX: 00 } ;
CONSTANT: LIBUSB_TRANSFER_TYPE_MASK HEX: 03
C-ENUM: libusb_transfer_type
ENUM: libusb_transfer_type
{ LIBUSB_TRANSFER_TYPE_CONTROL 0 }
{ LIBUSB_TRANSFER_TYPE_ISOCHRONOUS 1 }
{ LIBUSB_TRANSFER_TYPE_BULK 2 }
{ LIBUSB_TRANSFER_TYPE_INTERRUPT 3 } ;
C-ENUM: libusb_standard_request
ENUM: libusb_standard_request
{ LIBUSB_REQUEST_GET_STATUS HEX: 00 }
{ LIBUSB_REQUEST_CLEAR_FEATURE HEX: 01 }
{ LIBUSB_REQUEST_SET_FEATURE HEX: 03 }
@ -77,13 +77,13 @@ C-ENUM: libusb_standard_request
{ LIBUSB_REQUEST_SET_INTERFACE HEX: 0B }
{ LIBUSB_REQUEST_SYNCH_FRAME HEX: 0C } ;
C-ENUM: libusb_request_type
ENUM: libusb_request_type
{ LIBUSB_REQUEST_TYPE_STANDARD HEX: 00 }
{ LIBUSB_REQUEST_TYPE_CLASS HEX: 20 }
{ LIBUSB_REQUEST_TYPE_VENDOR HEX: 40 }
{ LIBUSB_REQUEST_TYPE_RESERVED HEX: 60 } ;
C-ENUM: libusb_request_recipient
ENUM: libusb_request_recipient
{ LIBUSB_RECIPIENT_DEVICE HEX: 00 }
{ LIBUSB_RECIPIENT_INTERFACE HEX: 01 }
{ LIBUSB_RECIPIENT_ENDPOINT HEX: 02 }
@ -91,7 +91,7 @@ C-ENUM: libusb_request_recipient
CONSTANT: LIBUSB_ISO_SYNC_TYPE_MASK HEX: 0C
C-ENUM: libusb_iso_sync_type
ENUM: libusb_iso_sync_type
{ LIBUSB_ISO_SYNC_TYPE_NONE 0 }
{ LIBUSB_ISO_SYNC_TYPE_ASYNC 1 }
{ LIBUSB_ISO_SYNC_TYPE_ADAPTIVE 2 }
@ -99,7 +99,7 @@ C-ENUM: libusb_iso_sync_type
CONSTANT: LIBUSB_ISO_USAGE_TYPE_MASK HEX: 30
C-ENUM: libusb_iso_usage_type
ENUM: libusb_iso_usage_type
{ LIBUSB_ISO_USAGE_TYPE_DATA 0 }
{ LIBUSB_ISO_USAGE_TYPE_FEEDBACK 1 }
{ LIBUSB_ISO_USAGE_TYPE_IMPLICIT 2 } ;
@ -176,7 +176,7 @@ C-TYPE: libusb_context
C-TYPE: libusb_device
C-TYPE: libusb_device_handle
C-ENUM: libusb_error
ENUM: libusb_error
{ LIBUSB_SUCCESS 0 }
{ LIBUSB_ERROR_IO -1 }
{ LIBUSB_ERROR_INVALID_PARAM -2 }
@ -192,7 +192,7 @@ C-ENUM: libusb_error
{ LIBUSB_ERROR_NOT_SUPPORTED -12 }
{ LIBUSB_ERROR_OTHER -99 } ;
C-ENUM: libusb_transfer_status
ENUM: libusb_transfer_status
LIBUSB_TRANSFER_COMPLETED
LIBUSB_TRANSFER_ERROR
LIBUSB_TRANSFER_TIMED_OUT
@ -201,7 +201,7 @@ C-ENUM: libusb_transfer_status
LIBUSB_TRANSFER_NO_DEVICE
LIBUSB_TRANSFER_OVERFLOW ;
C-ENUM: libusb_transfer_flags
ENUM: libusb_transfer_flags
{ LIBUSB_TRANSFER_SHORT_NOT_OK 1 }
{ LIBUSB_TRANSFER_FREE_BUFFER 2 }
{ LIBUSB_TRANSFER_FREE_TRANSFER 4 } ;

View File

@ -28,7 +28,7 @@ LIBRARY: LLVMCore
TYPEDEF: uint unsigned
TYPEDEF: unsigned enum
C-ENUM: LLVMAttribute
ENUM: LLVMAttribute
{ LLVMZExtAttribute BIN: 1 }
{ LLVMSExtAttribute BIN: 10 }
{ LLVMNoReturnAttribute BIN: 100 }
@ -41,7 +41,7 @@ C-ENUM: LLVMAttribute
{ LLVMReadNoneAttribute BIN: 1000000000 }
{ LLVMReadOnlyAttribute BIN: 10000000000 } ;
C-ENUM: LLVMTypeKind
ENUM: LLVMTypeKind
LLVMVoidTypeKind
LLVMFloatTypeKind
LLVMDoubleTypeKind
@ -58,7 +58,7 @@ C-ENUM: LLVMTypeKind
LLVMOpaqueTypeKind
LLVMVectorTypeKind ;
C-ENUM: LLVMLinkage
ENUM: LLVMLinkage
LLVMExternalLinkage
LLVMLinkOnceLinkage
LLVMWeakLinkage
@ -69,19 +69,19 @@ C-ENUM: LLVMLinkage
LLVMExternalWeakLinkage
LLVMGhostLinkage ;
C-ENUM: LLVMVisibility
ENUM: LLVMVisibility
LLVMDefaultVisibility
LLVMHiddenVisibility
LLVMProtectedVisibility ;
C-ENUM: LLVMCallConv
ENUM: LLVMCallConv
{ LLVMCCallConv 0 }
{ LLVMFastCallConv 8 }
{ LLVMColdCallConv 9 }
{ LLVMX86StdcallCallConv 64 }
{ LLVMX86FastcallCallConv 65 } ;
C-ENUM: LLVMIntPredicate
ENUM: LLVMIntPredicate
{ LLVMIntEQ 32 }
{ LLVMIntNE 33 }
{ LLVMIntUGT 34 }
@ -93,7 +93,7 @@ C-ENUM: LLVMIntPredicate
{ LLVMIntSLT 40 }
{ LLVMIntSLE 41 } ;
C-ENUM: LLVMRealPredicate
ENUM: LLVMRealPredicate
LLVMRealPredicateFalse
LLVMRealOEQ
LLVMRealOGT

View File

@ -775,14 +775,14 @@ STRUCT: scattered_relocation_info_little_endian
{ r_address_type_length_pcrel_scattered uint }
{ r_value int } ;
C-ENUM: reloc_type_generic
ENUM: reloc_type_generic
GENERIC_RELOC_VANILLA
GENERIC_RELOC_PAIR
GENERIC_RELOC_SECTDIFF
GENERIC_RELOC_PB_LA_PTR
GENERIC_RELOC_LOCAL_SECTDIFF ;
C-ENUM: reloc_type_x86_64
ENUM: reloc_type_x86_64
X86_64_RELOC_UNSIGNED
X86_64_RELOC_SIGNED
X86_64_RELOC_BRANCH
@ -793,7 +793,7 @@ C-ENUM: reloc_type_x86_64
X86_64_RELOC_SIGNED_2
X86_64_RELOC_SIGNED_4 ;
C-ENUM: reloc_type_ppc
ENUM: reloc_type_ppc
PPC_RELOC_VANILLA
PPC_RELOC_PAIR
PPC_RELOC_BR14

View File

@ -9,15 +9,14 @@ LIBRARY: tokyocabinet
TYPEDEF: void* TCADB
C-ENUM: f
ADBOVOID
ADBOMDB
ADBONDB
ADBOHDB
ADBOBDB
ADBOFDB
ADBOTDB
ADBOSKEL ;
CONSTANT: ADBOVOID 0
CONSTANT: ADBOMDB 1
CONSTANT: ADBONDB 2
CONSTANT: ADBOHDB 3
CONSTANT: ADBOBDB 4
CONSTANT: ADBOFDB 5
CONSTANT: ADBOTDB 6
CONSTANT: ADBOSKEL 7
FUNCTION: TCADB* tcadbnew ( ) ;
FUNCTION: void tcadbdel ( TCADB* adb ) ;

View File

@ -27,10 +27,9 @@ CONSTANT: BDBOTSYNC 64
TYPEDEF: void* BDBCUR
C-ENUM: f
BDBCPCURRENT
BDBCPBEFORE
BDBCPAFTER ;
CONSTANT: BDBCPCURRENT 0
CONSTANT: BDBCPBEFORE 1
CONSTANT: BDBCPAFTER 2
FUNCTION: c-string tcbdberrmsg ( int ecode ) ;
FUNCTION: TCBDB* tcbdbnew ( ) ;

View File

@ -25,15 +25,14 @@ C-TYPE: TCRDB
! { timeout double }
! { opts int } ;
C-ENUM: f
TTESUCCESS
TTEINVALID
TTENOHOST
TTEREFUSED
TTESEND
TTERECV
TTEKEEP
TTENOREC ;
CONSTANT: TTESUCCESS 0
CONSTANT: TTEINVALID 1
CONSTANT: TTENOHOST 2
CONSTANT: TTEREFUSED 3
CONSTANT: TTESEND 4
CONSTANT: TTERECV 5
CONSTANT: TTEKEEP 6
CONSTANT: TTENOREC 7
CONSTANT: TTEMISC 9999
CONSTANT: RDBTRECON 1

View File

@ -27,9 +27,8 @@ CONSTANT: TDBONOLCK 16
CONSTANT: TDBOLCKNB 32
CONSTANT: TDBOTSYNC 64
C-ENUM: f
TDBITLEXICAL
TDBITDECIMAL ;
CONSTANT: TDBITLEXICAL 0
CONSTANT: TDBITDECIMAL 1
CONSTANT: TDBITOPT 9998
CONSTANT: TDBITVOID 9999
@ -38,31 +37,29 @@ CONSTANT: TDBITKEEP 16777216
C-TYPE: TDBCOND
C-TYPE: TDBQRY
C-ENUM: f
TDBQCSTREQ
TDBQCSTRINC
TDBQCSTRBW
TDBQCSTREW
TDBQCSTRAND
TDBQCSTROR
TDBQCSTROREQ
TDBQCSTRRX
TDBQCNUMEQ
TDBQCNUMGT
TDBQCNUMGE
TDBQCNUMLT
TDBQCNUMLE
TDBQCNUMBT
TDBQCNUMOREQ ;
CONSTANT: TDBQCSTREQ 0
CONSTANT: TDBQCSTRINC 1
CONSTANT: TDBQCSTRBW 2
CONSTANT: TDBQCSTREW 3
CONSTANT: TDBQCSTRAND 4
CONSTANT: TDBQCSTROR 5
CONSTANT: TDBQCSTROREQ 6
CONSTANT: TDBQCSTRRX 7
CONSTANT: TDBQCNUMEQ 8
CONSTANT: TDBQCNUMGT 9
CONSTANT: TDBQCNUMGE 10
CONSTANT: TDBQCNUMLT 11
CONSTANT: TDBQCNUMLE 12
CONSTANT: TDBQCNUMBT 13
CONSTANT: TDBQCNUMOREQ 14
CONSTANT: TDBQCNEGATE 16777216
CONSTANT: TDBQCNOIDX 33554432
C-ENUM: f
TDBQOSTRASC
TDBQOSTRDESC
TDBQONUMASC
TDBQONUMDESC ;
CONSTANT: TDBQOSTRASC 0
CONSTANT: TDBQOSTRDESC 1
CONSTANT: TDBQONUMASC 2
CONSTANT: TDBQONUMDESC 3
CONSTANT: TDBQPPUT 1
CONSTANT: TDBQPOUT 2

View File

@ -12,11 +12,10 @@ IN: tokyo.alien.tcutil
LIBRARY: tokyocabinet
C-ENUM: f
TCDBTHASH
TCDBTBTREE
TCDBTFIXED
TCDBTTABLE ;
CONSTANT: TCDBTHASH 0
CONSTANT: TCDBTBTREE 1
CONSTANT: TCDBTFIXED 2
CONSTANT: TCDBTTABLE 3
! FIXME: on windows 64bits this isn't correct, because long is 32bits there, and time_t is int64
TYPEDEF: long tokyo_time_t

View File

@ -1,3 +1,4 @@
;;; fuel-syntax.el --- auxiliar definitions for factor code navigation.
;; Copyright (C) 2008, 2009 Jose Antonio Ortega Ruiz
@ -46,7 +47,7 @@
'(":" "::" ";" "&:" "<<" "<PRIVATE" ">>"
"ABOUT:" "AFTER:" "ALIAS:" "ALIEN:" "ARTICLE:"
"B" "BEFORE:" "BIN:"
"C:" "CALLBACK:" "C-ENUM:" "C-STRUCT:" "C-TYPE:" "C-UNION:" "CHAR:" "COM-INTERFACE:" "CONSTANT:" "call-next-method"
"C:" "CALLBACK:" "ENUM:" "C-TYPE:" "CHAR:" "COM-INTERFACE:" "CONSTANT:" "CONSULT:" "call-next-method"
"DEFER:"
"EBNF:" ";EBNF" "ERROR:" "EXCLUDE:"
"f" "FORGET:" "FROM:" "FUNCTION:"
@ -59,7 +60,7 @@
"MEMO:" "MEMO:" "METHOD:" "MIXIN:"
"NAN:"
"OCT:"
"POSTPONE:" "PREDICATE:" "PRIMITIVE:" "PRIVATE>" "PROVIDE:"
"POSTPONE:" "PREDICATE:" "PRIMITIVE:" "PRIVATE>" "PROTOCOL:" "PROVIDE:"
"QUALIFIED-WITH:" "QUALIFIED:"
"read-only" "RENAME:" "REQUIRE:" "REQUIRES:"
"SINGLETON:" "SINGLETONS:" "SLOT:" "SPECIALIZED-ARRAY:" "SPECIALIZED-ARRAYS:" "STRING:" "STRUCT:" "SYMBOL:" "SYMBOLS:" "SYNTAX:"
@ -164,13 +165,13 @@
(defconst fuel-syntax--indent-def-starts '("" ":"
"AFTER" "BEFORE"
"C-ENUM" "C-STRUCT" "C-UNION" "COM-INTERFACE"
"ENUM" "COM-INTERFACE" "CONSULT"
"FROM" "FUNCTION:"
"INTERSECTION:"
"M" "M:" "MACRO" "MACRO:"
"MEMO" "MEMO:" "METHOD"
"SYNTAX"
"PREDICATE" "PRIMITIVE"
"PREDICATE" "PRIMITIVE" "PROTOCOL"
"SINGLETONS"
"STRUCT" "SYMBOLS" "TAG" "TUPLE"
"TYPED" "TYPED:"
@ -279,7 +280,7 @@
("\\_<\\(U\\)SING: \\(;\\)" (1 "<b") (2 ">b"))
("\\_<USING:\\( \\)" (1 "<b"))
("\\_<\\(C\\)-ENUM: \\(;\\)" (1 "<b") (2 ">b"))
("\\_<C-ENUM:\\( \\|\n\\)" (1 "<b"))
("\\_<ENUM:\\( \\|\n\\)" (1 "<b"))
("\\_<TUPLE: +\\w+? +< +\\w+? *\\( \\|\n\\)\\([^;]\\|$\\)" (1 "<b"))
("\\_<TUPLE: +\\w+? *\\( \\|\n\\)\\([^;<\n]\\|\\_>\\)" (1 "<b"))
("\\_<\\(SYMBOLS\\|SPECIALIZED-ARRAYS\\|SINGLETONS\\|VARIANT\\): *?\\( \\|\n\\)\\([^;\n]\\|\\_>\\)"

View File

@ -878,13 +878,11 @@ TYPEDEF: int CRYPT_KEYID_TYPE
! Internal keyset options
! (As _NONE but open for exclusive access, _CRYPT_DEFINED
! Last possible key option type, _CRYPT_DEFINED Last external keyset option)
C-ENUM: f
CRYPT_KEYOPT_NONE
CRYPT_KEYOPT_READONLY
CRYPT_KEYOPT_CREATE
CRYPT_IKEYOPT_EXCLUSIVEACCESS
CRYPT_KEYOPT_LAST
;
CONSTANT: CRYPT_KEYOPT_NONE 0
CONSTANT: CRYPT_KEYOPT_READONLY 1
CONSTANT: CRYPT_KEYOPT_CREATE 2
CONSTANT: CRYPT_IKEYOPT_EXCLUSIVEACCESS 3
CONSTANT: CRYPT_KEYOPT_LAST 4
: CRYPT_KEYOPT_LAST_EXTERNAL 3 ; inline ! = CRYPT_KEYOPT_CREATE + 1

View File

@ -24,13 +24,11 @@ IN: pdf.libhpdf
: HPDF_COMP_MASK HEX: FF ; inline
! page mode
C-ENUM: f
HPDF_PAGE_MODE_USE_NONE
HPDF_PAGE_MODE_USE_OUTLINE
HPDF_PAGE_MODE_USE_THUMBS
HPDF_PAGE_MODE_FULL_SCREEN
HPDF_PAGE_MODE_EOF
;
CONSTANT: HPDF_PAGE_MODE_USE_NONE 0
CONSTANT: HPDF_PAGE_MODE_USE_OUTLINE 1
CONSTANT: HPDF_PAGE_MODE_USE_THUMBS 2
CONSTANT: HPDF_PAGE_MODE_FULL_SCREEN 3
CONSTANT: HPDF_PAGE_MODE_EOF 4
: error-code ( -- seq ) {
{ HEX: 1001 "HPDF_ARRAY_COUNT_ERR\nInternal error. The consistency of the data was lost." }