Changeset 4130 for trunk/ProjectFortress/syntax_abstraction_tests
- Timestamp:
- 09/05/09 14:21:41 (3 months ago)
- Location:
- trunk/ProjectFortress/syntax_abstraction_tests
- Files:
-
- 2 modified
Legend:
- Unmodified
- Added
- Removed
-
trunk/ProjectFortress/syntax_abstraction_tests/Regex.fss
r3329 r4130 24 24 25 25 object Regexp( elements : List[\Element\] ) 26 asString():String = "/" (BIG || [x<-elements] x) "/"26 getter asString():String = "/" (BIG || [x<-elements] x) "/" 27 27 raw():String = (BIG || [x<-elements] x) 28 28 (* … … 35 35 36 36 object RepeatElement(e:Element) extends Element 37 asString():String = e "*"37 getter asString():String = e "*" 38 38 end 39 39 40 40 object RepeatNonGreedyElement(e:Element) extends Element 41 asString():String = e "*?"41 getter asString():String = e "*?" 42 42 end 43 43 44 44 object RepeatExactlyElement(e:Element, n:ZZ32) extends Element 45 asString():String = e "{" n "}"45 getter asString():String = e "{" n "}" 46 46 end 47 47 48 48 object RepeatMinElement(e:Element, n:ZZ32) extends Element 49 asString():String = e "{" n ",}"49 getter asString():String = e "{" n ",}" 50 50 end 51 51 52 52 object RepeatMaxElement(e:Element, n:ZZ32) extends Element 53 asString():String = e "{," n "}"53 getter asString():String = e "{," n "}" 54 54 end 55 55 56 56 object RepeatBetweenElement(e:Element, n1:ZZ32, n2:ZZ32) extends Element 57 asString():String = e "{" n1 ", " n2 "}"57 getter asString():String = e "{" n1 ", " n2 "}" 58 58 end 59 59 60 60 object RepeatOneElement(e:Element) extends Element 61 asString():String = e "+"61 getter asString():String = e "+" 62 62 end 63 63 64 64 object RepeatOneNonGreedyElement(e:Element) extends Element 65 asString():String = e "+?"65 getter asString():String = e "+?" 66 66 end 67 67 68 68 object MaybeElement(e:Element) extends Element 69 asString():String = e "?"69 getter asString():String = e "?" 70 70 end 71 71 72 72 object GroupElement(e:List[\Element\]) extends Element 73 asString():String = "(" (BIG || [x<-e] x) ")"73 getter asString():String = "(" (BIG || [x<-e] x) ")" 74 74 end 75 75 76 76 object RangeElement(s1:String,s2:String) extends Element 77 asString():String = s1 "-" s277 getter asString():String = s1 "-" s2 78 78 end 79 79 80 80 object ClassElement(e:List[\Element\]) extends Element 81 asString():String = "[" (BIG || [x<-e] x) "]"81 getter asString():String = "[" (BIG || [x<-e] x) "]" 82 82 end 83 83 84 84 object InverseClassElement(e:List[\Element\]) extends Element 85 asString():String = "[^" (BIG || [x<-e] x) "]"85 getter asString():String = "[^" (BIG || [x<-e] x) "]" 86 86 end 87 87 88 88 object StartElement() extends Element 89 asString():String = "^"89 getter asString():String = "^" 90 90 end 91 91 92 92 object AnyElement() extends Element 93 asString():String = "."93 getter asString():String = "." 94 94 end 95 95 96 96 object EndElement() extends Element 97 asString():String = "$"97 getter asString():String = "$" 98 98 end 99 99 100 100 object CharElement(s:String) extends Element 101 asString():String = s101 getter asString():String = s 102 102 end 103 103 104 104 object EscapedElement(s:String) extends Element 105 asString():String = "\\" s105 getter asString():String = "\\" s 106 106 end 107 107 108 108 object AlternateElement() extends Element 109 asString():String = "|"109 getter asString():String = "|" 110 110 end 111 111 -
trunk/ProjectFortress/syntax_abstraction_tests/Xml.fss
r3645 r4130 24 24 25 25 trait Content 26 getter asString():String 26 27 hasElements():Boolean = false 27 asString():String28 28 end 29 29 30 30 object Element(info:Header, content_:List[\Content\], endTag:String) extends Content 31 getter asString():String = toXml() 32 31 33 toXml():String = 32 34 do … … 38 40 s := s (typecase x of 39 41 Element => // x.toXml() 40 else => x.asString ()42 else => x.asString 41 43 end) 42 44 end … … 45 47 end 46 48 47 asString():String = toXml()48 49 49 children():List[\Element\] = 50 50 content_.map[\Element\](fn x => cast[\Element\](x)) 51 51 52 hasElements():Boolean = content_.isEmpty ()OR: (isElement(content_[0]))52 hasElements():Boolean = content_.isEmpty OR: (isElement(content_[0])) 53 53 content():CData = cast[\CData\](content_[0]) 54 54 (* … … 75 75 getter getKey():String = key 76 76 getter getValue():String = val 77 getter asString():String = " " getKey() "= '" || getValue()|| "'"77 getter asString():String = " " self.getKey "= '" || self.getValue || "'" 78 78 end 79 79 80 80 object CData(v:String) extends Content 81 asString():String = v81 getter asString():String = v 82 82 end 83 83

