Get furnace and websites..concatenative to load
							parent
							
								
									977f5da07d
								
							
						
					
					
						commit
						acf0d8d9c8
					
				| 
						 | 
				
			
			@ -1,5 +1,5 @@
 | 
			
		|||
USING: assocs classes help.markup help.syntax kernel
 | 
			
		||||
quotations strings words furnace.auth.providers.db
 | 
			
		||||
quotations strings words words.symbol furnace.auth.providers.db
 | 
			
		||||
checksums.sha2 furnace.auth.providers math byte-arrays
 | 
			
		||||
http multiline ;
 | 
			
		||||
IN: furnace.auth
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,5 +1,5 @@
 | 
			
		|||
USING: help.markup help.syntax urls http words kernel
 | 
			
		||||
furnace.sessions furnace.db ;
 | 
			
		||||
furnace.sessions furnace.db words.symbol ;
 | 
			
		||||
IN: furnace.conversations
 | 
			
		||||
 | 
			
		||||
HELP: <conversations>
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,4 +1,6 @@
 | 
			
		|||
USING: help.markup help.syntax io.streams.string quotations strings calendar serialize kernel furnace.db words kernel ;
 | 
			
		||||
USING: help.markup help.syntax io.streams.string quotations
 | 
			
		||||
strings calendar serialize kernel furnace.db words words.symbol
 | 
			
		||||
kernel ;
 | 
			
		||||
IN: furnace.sessions
 | 
			
		||||
 | 
			
		||||
HELP: <sessions>
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -3,7 +3,7 @@
 | 
			
		|||
! See http://factorcode.org/license.txt for BSD license.
 | 
			
		||||
USING: continuations sequences kernel namespaces debugger
 | 
			
		||||
combinators math quotations generic strings splitting
 | 
			
		||||
accessors assocs fry
 | 
			
		||||
accessors assocs fry vocabs.parser
 | 
			
		||||
parser lexer io io.files io.streams.string io.encodings.utf8
 | 
			
		||||
html.elements
 | 
			
		||||
html.templates ;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,4 +1,5 @@
 | 
			
		|||
USING: accessors parser words sequences namespaces kernel assocs
 | 
			
		||||
USING: accessors parser words words.symbol
 | 
			
		||||
sequences namespaces kernel assocs
 | 
			
		||||
compiler.units ;
 | 
			
		||||
IN: xmode.tokens
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -43,11 +43,11 @@ C: <parse-result> parse-result
 | 
			
		|||
    2over shorter? [
 | 
			
		||||
        3drop f
 | 
			
		||||
    ] [
 | 
			
		||||
        >r [ length head-slice ] keep r> string=
 | 
			
		||||
        [ [ length head-slice ] keep ] dip string=
 | 
			
		||||
    ] if ;
 | 
			
		||||
 | 
			
		||||
: ?string-head ( str head ignore-case -- newstr ? )
 | 
			
		||||
    >r 2dup r> string-head?
 | 
			
		||||
    [ 2dup ] dip string-head?
 | 
			
		||||
    [ length tail-slice t ] [ drop f ] if ;
 | 
			
		||||
 | 
			
		||||
TUPLE: token-parser string ignore-case? ;
 | 
			
		||||
| 
						 | 
				
			
			@ -60,7 +60,7 @@ C: <token-parser> token-parser
 | 
			
		|||
 | 
			
		||||
M: token-parser parse ( input parser -- list )
 | 
			
		||||
    [ string>> ] [ ignore-case?>> ] bi
 | 
			
		||||
    >r tuck r> ?string-head
 | 
			
		||||
    [ tuck ] dip ?string-head
 | 
			
		||||
    [ <parse-results> ] [ 2drop nil ] if ;
 | 
			
		||||
 | 
			
		||||
: 1token ( n -- parser ) 1string token ;
 | 
			
		||||
| 
						 | 
				
			
			@ -76,7 +76,7 @@ M: satisfy-parser parse ( input parser -- list )
 | 
			
		|||
    over empty? [
 | 
			
		||||
        2drop nil
 | 
			
		||||
    ] [
 | 
			
		||||
        quot>> >r unclip-slice dup r> call
 | 
			
		||||
        quot>> [ unclip-slice dup ] dip call
 | 
			
		||||
        [ swap <parse-results> ] [ 2drop nil ] if
 | 
			
		||||
    ] if ;
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -134,7 +134,7 @@ TUPLE: and-parser parsers ;
 | 
			
		|||
 | 
			
		||||
: <&> ( parser1 parser2 -- parser )
 | 
			
		||||
    over and-parser? [
 | 
			
		||||
        >r parsers>> r> suffix
 | 
			
		||||
        [ parsers>> ] dip suffix
 | 
			
		||||
    ] [
 | 
			
		||||
        2array
 | 
			
		||||
    ] if and-parser boa ;
 | 
			
		||||
| 
						 | 
				
			
			@ -146,7 +146,7 @@ TUPLE: and-parser parsers ;
 | 
			
		|||
    swap [
 | 
			
		||||
        dup unparsed>> rot parse
 | 
			
		||||
        [
 | 
			
		||||
            >r parsed>> r>
 | 
			
		||||
            [ parsed>> ] dip
 | 
			
		||||
            [ parsed>> 2array ] keep
 | 
			
		||||
            unparsed>> <parse-result>
 | 
			
		||||
        ] lazy-map-with
 | 
			
		||||
| 
						 | 
				
			
			@ -191,7 +191,7 @@ C: sp sp-parser ( p1 -- parser )
 | 
			
		|||
M: sp-parser parse ( input parser -- list )
 | 
			
		||||
    #! Skip all leading whitespace from the input then call
 | 
			
		||||
    #! the parser on the remaining input.
 | 
			
		||||
    >r trim-left-slice r> p1>> parse ;
 | 
			
		||||
    [ trim-left-slice ] dip p1>> parse ;
 | 
			
		||||
 | 
			
		||||
TUPLE: just-parser p1 ;
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -346,4 +346,4 @@ LAZY: surrounded-by ( parser start end -- parser' )
 | 
			
		|||
    dupd exactly-n swap <*> <&> ;
 | 
			
		||||
 | 
			
		||||
: from-m-to-n ( parser m n -- parser' )
 | 
			
		||||
    >r [ exactly-n ] 2keep r> swap - at-most-n <:&:> ;
 | 
			
		||||
    [ [ exactly-n ] 2keep ] dip swap - at-most-n <:&:> ;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -17,7 +17,7 @@ SYMBOL: ignore-case?
 | 
			
		|||
 | 
			
		||||
: char-between?-quot ( ch1 ch2 -- quot )
 | 
			
		||||
    ignore-case? get
 | 
			
		||||
    [ [ ch>upper ] bi@ [ >r >r ch>upper r> r> between? ] ]
 | 
			
		||||
    [ [ ch>upper ] bi@ [ [ ch>upper ] 2dip between? ] ]
 | 
			
		||||
    [ [ between? ] ]
 | 
			
		||||
    if 2curry ;
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -79,7 +79,7 @@ PRIVATE>
 | 
			
		|||
    [ hex> ] <@ ;
 | 
			
		||||
 | 
			
		||||
: satisfy-tokens ( assoc -- parser )
 | 
			
		||||
    [ >r token r> <@literal ] { } assoc>map <or-parser> ;
 | 
			
		||||
    [ [ token ] dip <@literal ] { } assoc>map <or-parser> ;
 | 
			
		||||
 | 
			
		||||
: 'simple-escape-char' ( -- parser )
 | 
			
		||||
    {
 | 
			
		||||
| 
						 | 
				
			
			@ -270,7 +270,7 @@ TUPLE: regexp source parser ignore-case? ;
 | 
			
		|||
    ] keep regexp boa ;
 | 
			
		||||
 | 
			
		||||
: do-ignore-case ( string regexp -- string regexp )
 | 
			
		||||
    dup ignore-case?>> [ >r >upper r> ] when ;
 | 
			
		||||
    dup ignore-case?>> [ [ >upper ] dip ] when ;
 | 
			
		||||
 | 
			
		||||
: matches? ( string regexp -- ? )
 | 
			
		||||
    do-ignore-case parser>> just parse nil? not ;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,7 +1,7 @@
 | 
			
		|||
! Copyright (C) 2007, 2008 Slava Pestov
 | 
			
		||||
! See http://factorcode.org/license.txt for BSD license.
 | 
			
		||||
USING: namespaces assocs sorting sequences kernel accessors
 | 
			
		||||
hashtables sequences.lib db.types db.tuples db combinators
 | 
			
		||||
hashtables db.types db.tuples db combinators
 | 
			
		||||
calendar calendar.format math.parser math.order syndication urls
 | 
			
		||||
xml.writer xmode.catalog validators
 | 
			
		||||
html.forms
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -2,7 +2,7 @@
 | 
			
		|||
! See http://factorcode.org/license.txt for BSD license.
 | 
			
		||||
USING: kernel accessors sequences sorting math math.order
 | 
			
		||||
calendar alarms logging concurrency.combinators namespaces
 | 
			
		||||
sequences.lib db.types db.tuples db fry locals hashtables
 | 
			
		||||
db.types db.tuples db fry locals hashtables
 | 
			
		||||
syndication urls xml.writer validators
 | 
			
		||||
html.forms
 | 
			
		||||
html.components
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue