language-ecmascript-analysis 0.9 → 0.9.1
raw patch · 5 files changed
+24/−30 lines, 5 filesdep −HUnitdep −mtldep −test-frameworkPVP ok
version bump matches the API change (PVP)
Dependencies removed: HUnit, mtl, test-framework, test-framework-hunit
API changes (from Hackage documentation)
Files
- CHANGELOG +2/−0
- LICENSE +1/−1
- language-ecmascript-analysis.cabal +9/−22
- src/Language/ECMAScript3/Analysis/LabelSet.hs +12/−4
- test/TestMain.hs +0/−3
+ CHANGELOG view
@@ -0,0 +1,2 @@+=0.9.1=+Fixed documentation for Language.ECMAScript3.Analysis.LabelSet, removed the (now obsolete) test-suite.
LICENSE view
@@ -1,5 +1,5 @@ Copyright (c) 2007--2012, Brown University, 2008-2012 Claudiu Saftoiu,-2012 Stevens Institute of Technology.+2012-2015 Stevens Institute of Technology. All Rights Reserved. Redistribution and use in source and binary forms, with or without
language-ecmascript-analysis.cabal view
@@ -2,12 +2,12 @@ -- further documentation, see http://haskell.org/cabal/users-guide/ name: language-ecmascript-analysis-version: 0.9+version: 0.9.1 cabal-version: >= 1.10 copyright: (c) 2007-2012 Brown University, (c) 2008-2010 Claudiu Saftoiu,- (c) 2012-2013 Stevens Institute of Technology-synopsis: JavaScript analysis library-description: Includes a label set analysis and a lexical environment analysis+ (c) 2012-2015 Stevens Institute of Technology+synopsis: JavaScript static analysis library. +description: JavaScript static analysis library. Includes label set and lexical environment analyses. The package versions follow Semantic Versioning model (semver.org). license: BSD3 license-file: LICENSE author: Andrey Chudnov, Arjun Guha, Spiridon Aristides Eliopoulos,@@ -18,8 +18,10 @@ category: Language build-type: Simple stability: experimental-Tested-with: GHC==7.6.3+Tested-with: GHC==7.4.2, GHC==7.6.3, GHC==7.8.3+Extra-Source-Files: CHANGELOG + source-repository head type: git location: git://github.com/jswebtools/language-ecmascript-analysis.git@@ -27,7 +29,7 @@ source-repository this type: git location: git://github.com/jswebtools/language-ecmascript-analysis.git- tag: 0.9+ tag: 0.9.1 Library Build-Depends: base >= 4 && < 5@@ -43,19 +45,4 @@ Default-Extensions: DeriveDataTypeable, ScopedTypeVariables, DeriveFunctor, DeriveFoldable, DeriveTraversable, FlexibleContexts ghc-options: -fwarn-incomplete-patterns- default-language: Haskell2010 --Test-Suite test- hs-source-dirs: test- Type: exitcode-stdio-1.0- Main-Is: TestMain.hs- Build-Depends: base >= 4 && < 5,- uniplate >= 1.6 && <1.7,- language-ecmascript >= 0.15 && < 1.0,- HUnit,- test-framework >= 0.8 && < 0.9,- test-framework-hunit >= 0.3.0 && < 0.4,- mtl- Default-Extensions: DeriveDataTypeable, ScopedTypeVariables, DeriveFunctor, DeriveFoldable, DeriveTraversable, FlexibleContexts- Default-Language: Haskell2010- ghc-options: -fwarn-incomplete-patterns+ default-language: Haskell2010
src/Language/ECMAScript3/Analysis/LabelSet.hs view
@@ -19,12 +19,20 @@ -- the spec) data Label = Label String | EmptyLabel- deriving (Ord, Eq, Show, Data, Typeable)+ deriving (Ord, Eq, Data, Typeable) --- | Annotates statements with their label sets; example use:+instance Show Label where+ show (Label s) = s+ show EmptyLabel = ""++-- | Annotates statements with their label sets. Assuming you've also imported+-- 'Language.ECMAScript3.Syntax.Annotations', 'Control.Arrow' and+-- 'Data.Set', the example use would be: ----- >>> let jsa = reannotate (\a -> (a, Set.empty))--- >>> in annotateLabelSets jsa snd (\labs (a, ls) -> (a, labs `Set.union` ls))+-- @+-- lsAnalysis :: 'JavaScript' a -> 'JavaScript' (a, 'Set' 'Label') +-- lsAnalysis = annotateLabelSets snd (\\labs -> second $ union labs) . reannotate (\a -> (a, empty))+-- @ annotateLabelSets :: Data a => (a -> Set Label) -- ^ annotation read function -> (Set Label -> a -> a) -- ^ annotation write function
− test/TestMain.hs
@@ -1,3 +0,0 @@-module Main where--main = return ()