Skip to content

Commit

Permalink
return package name with declarations
Browse files Browse the repository at this point in the history
  • Loading branch information
JPMoresmau committed Aug 30, 2013
1 parent c092fa6 commit a2046d9
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 10 deletions.
2 changes: 1 addition & 1 deletion scion-browser.cabal
@@ -1,5 +1,5 @@
name: scion-browser
version: 0.2.18
version: 0.2.19
cabal-version: >= 1.8
build-type: Simple
license: BSD3
Expand Down
18 changes: 9 additions & 9 deletions src/Scion/PersistentBrowser/Query.hs
Expand Up @@ -201,20 +201,20 @@ constructorsByName name = do consts <- selectList [ DbConstructorName ==. name ]
return $ map entityVal consts

-- | Gets a list of modules where a declaration may live
getModulesWhereDeclarationIs :: String -> SQL [(DbModule,String)]
getModulesWhereDeclarationIs :: String -> SQL [(DbModule,String,String)]
getModulesWhereDeclarationIs declName =
do let sqlDecl = "SELECT DbModule.name, DbModule.doc, DbModule.packageId,''"
++ " FROM DbDecl, DbModule"
++ " WHERE DbDecl.moduleId = DbModule.id AND DbDecl.name = ?"
sqlCons = "SELECT DbModule.name, DbModule.doc, DbModule.packageId,DbDecl.name"
++ " FROM DbConstructor, DbDecl, DbModule"
do let sqlDecl = "SELECT DbModule.name, DbModule.doc, DbModule.packageId,'',DbPackage.name"
++ " FROM DbDecl, DbModule, DbPackage"
++ " WHERE DbDecl.moduleId = DbModule.id AND DbDecl.name = ? AND DbPackage.id=DbModule.packageId"
sqlCons = "SELECT DbModule.name, DbModule.doc, DbModule.packageId,DbDecl.name,DbPackage.name"
++ " FROM DbConstructor, DbDecl, DbModule, DbPackage"
++ " WHERE DbConstructor.declId = DbDecl.id AND DbDecl.moduleId = DbModule.id"
++ " AND DbConstructor.name = ?"
++ " AND DbConstructor.name = ? AND DbPackage.id=DbModule.packageId"
decls <- queryDb sqlDecl [declName] action
cons <- queryDb sqlCons [declName] action
return (decls ++ cons)
where action :: [PersistValue] -> (DbModule,String)
action [PersistText name, doc, pkgId@(PersistInt64 _),PersistText decl] = (DbModule (T.unpack name) (fromDbText doc) (Key pkgId),T.unpack decl)
where action :: [PersistValue] -> (DbModule,String,String)
action [PersistText name, doc, pkgId@(PersistInt64 _),PersistText decl,PersistText pkgName] = (DbModule (T.unpack name) (fromDbText doc) (Key pkgId),T.unpack decl,T.unpack pkgName)
action _ = error "This should not happen"

-- |Executes a query.
Expand Down

0 comments on commit a2046d9

Please sign in to comment.