Skip to content
This repository was archived by the owner on Apr 1, 2025. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion semantic.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -202,12 +202,14 @@ library
, Language.Ruby.Assignment
, Language.Ruby.PrettyPrint
, Language.Ruby.Syntax
, Language.TSX.Assignment
, Language.TSX.Syntax
, Language.TSX.Syntax.JSX
, Language.TypeScript.Assignment
, Language.TypeScript.Resolution
, Language.TypeScript.Syntax
, Language.TypeScript.Syntax.Import
, Language.TypeScript.Syntax.JavaScript
, Language.TypeScript.Syntax.JSX
, Language.TypeScript.Syntax.TypeScript
, Language.TypeScript.Syntax.Types
, Language.PHP.Assignment
Expand Down Expand Up @@ -318,6 +320,7 @@ library
, tree-sitter-python
, tree-sitter-ruby
, tree-sitter-typescript
, tree-sitter-tsx
, tree-sitter-java
ghc-options: -Wall -Wmissing-export-lists -Wcompat -Wincomplete-record-updates -Wincomplete-uni-patterns -Wredundant-constraints -fno-warn-name-shadowing -j
if flag(release)
Expand Down
20 changes: 11 additions & 9 deletions src/Data/Abstract/AccessControls/Instances.hs
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ import qualified Language.Markdown.Syntax as Markdown
import qualified Language.PHP.Syntax as PHP
import qualified Language.Python.Syntax as Python
import qualified Language.Ruby.Syntax as Ruby
import qualified Language.TSX.Syntax as TSX
import qualified Language.TypeScript.Syntax as TypeScript
import Data.Quieterm

Expand Down Expand Up @@ -454,25 +455,26 @@ instance AccessControls1 Ruby.LowPrecedenceOr
instance AccessControls1 Ruby.Module
instance AccessControls1 Ruby.ZSuper

instance AccessControls1 TSX.JsxElement
instance AccessControls1 TSX.JsxOpeningElement
instance AccessControls1 TSX.JsxSelfClosingElement
instance AccessControls1 TSX.JsxAttribute
instance AccessControls1 TSX.JsxNamespaceName
instance AccessControls1 TSX.JsxText
instance AccessControls1 TSX.JsxExpression
instance AccessControls1 TSX.JsxClosingElement
instance AccessControls1 TSX.JsxFragment

instance AccessControls1 TypeScript.AnnotatedExpression
instance AccessControls1 TypeScript.JavaScriptRequire
instance AccessControls1 TypeScript.Debugger
instance AccessControls1 TypeScript.Super
instance AccessControls1 TypeScript.Undefined
instance AccessControls1 TypeScript.With
instance AccessControls1 TypeScript.JsxElement
instance AccessControls1 TypeScript.JsxOpeningElement
instance AccessControls1 TypeScript.JsxSelfClosingElement
instance AccessControls1 TypeScript.JsxAttribute
instance AccessControls1 TypeScript.OptionalParameter
instance AccessControls1 TypeScript.RequiredParameter
instance AccessControls1 TypeScript.RestParameter
instance AccessControls1 TypeScript.JsxNamespaceName
instance AccessControls1 TypeScript.JsxText
instance AccessControls1 TypeScript.JsxExpression
instance AccessControls1 TypeScript.JsxClosingElement
instance AccessControls1 TypeScript.ImplementsClause
instance AccessControls1 TypeScript.JsxFragment
instance AccessControls1 TypeScript.Import
instance AccessControls1 TypeScript.QualifiedAliasedImport
instance AccessControls1 TypeScript.QualifiedExportFrom
Expand Down
2 changes: 2 additions & 0 deletions src/Data/Abstract/Evaluatable.hs
Original file line number Diff line number Diff line change
Expand Up @@ -163,6 +163,8 @@ instance HasPrelude 'Ruby where
defineClass (Declaration (X.name "Object")) [] $ do
defineBuiltIn (Declaration $ X.name "inspect") Default Public Show

instance HasPrelude 'TSX

instance HasPrelude 'TypeScript where
definePrelude _ = do
defineSelf
Expand Down
7 changes: 5 additions & 2 deletions src/Data/Language.hs
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ data Language
| Ruby
| TypeScript
| PHP
| TSX
deriving (Eq, Generic, Ord, Read, Show, Bounded, Hashable, ToJSON, Named, Enum, MessageField, NFData)

class SLanguage (lang :: Language) where
Expand Down Expand Up @@ -129,7 +130,7 @@ languageForType mediaType = case mediaType of
".go" -> Go
".js" -> JavaScript
".ts" -> TypeScript
".tsx" -> TypeScript
".tsx" -> TSX
".jsx" -> JSX
".py" -> Python
".php" -> PHP
Expand All @@ -144,7 +145,9 @@ extensionsForLanguage language = case language of
PHP -> [".php"]
Python -> [".py"]
Ruby -> [".rb"]
TypeScript -> [".ts", ".tsx", ".d.tsx"]
TypeScript -> [".ts"]
TSX -> [".tsx", ".d.tsx"]
JSX -> [".jsx"]
_ -> []

-- | Return a language based on a FilePath's extension, or Nothing if extension is not found or not supported.
Expand Down
Loading