mirror of
https://github.com/facebook/duckling.git
synced 2024-10-26 21:59:44 +03:00
VI: Ordinal
Summary: Ordinal for Vietnamese. Reviewed By: niteria Differential Revision: D4959285 fbshipit-source-id: 7212cc9
This commit is contained in:
parent
0370c452f1
commit
3314ddc7a4
@ -15,4 +15,5 @@ import Duckling.Dimensions.Types
|
||||
allDimensions :: [Some Dimension]
|
||||
allDimensions =
|
||||
[ This Numeral
|
||||
, This Ordinal
|
||||
]
|
||||
|
31
Duckling/Ordinal/VI/Corpus.hs
Normal file
31
Duckling/Ordinal/VI/Corpus.hs
Normal file
@ -0,0 +1,31 @@
|
||||
-- Copyright (c) 2016-present, Facebook, Inc.
|
||||
-- All rights reserved.
|
||||
--
|
||||
-- This source code is licensed under the BSD-style license found in the
|
||||
-- LICENSE file in the root directory of this source tree. An additional grant
|
||||
-- of patent rights can be found in the PATENTS file in the same directory.
|
||||
|
||||
{-# LANGUAGE OverloadedStrings #-}
|
||||
|
||||
module Duckling.Ordinal.VI.Corpus
|
||||
( corpus ) where
|
||||
|
||||
import Prelude
|
||||
import Data.String
|
||||
|
||||
import Duckling.Lang
|
||||
import Duckling.Ordinal.Types
|
||||
import Duckling.Resolve
|
||||
import Duckling.Testing.Types
|
||||
|
||||
corpus :: Corpus
|
||||
corpus = (testContext {lang = VI}, allExamples)
|
||||
|
||||
allExamples :: [Example]
|
||||
allExamples = concat
|
||||
[ examples (OrdinalData 1)
|
||||
[ "đầu tiên"
|
||||
, "thứ nhất"
|
||||
, "thứ 1"
|
||||
]
|
||||
]
|
33
Duckling/Ordinal/VI/Rules.hs
Normal file
33
Duckling/Ordinal/VI/Rules.hs
Normal file
@ -0,0 +1,33 @@
|
||||
-- Copyright (c) 2016-present, Facebook, Inc.
|
||||
-- All rights reserved.
|
||||
--
|
||||
-- This source code is licensed under the BSD-style license found in the
|
||||
-- LICENSE file in the root directory of this source tree. An additional grant
|
||||
-- of patent rights can be found in the PATENTS file in the same directory.
|
||||
|
||||
{-# LANGUAGE GADTs #-}
|
||||
{-# LANGUAGE OverloadedStrings #-}
|
||||
|
||||
module Duckling.Ordinal.VI.Rules
|
||||
( rules ) where
|
||||
|
||||
import Data.String
|
||||
import Prelude
|
||||
|
||||
import Duckling.Dimensions.Types
|
||||
import Duckling.Ordinal.Helpers
|
||||
import Duckling.Types
|
||||
|
||||
ruleOrdinals :: Rule
|
||||
ruleOrdinals = Rule
|
||||
{ name = "ordinals"
|
||||
, pattern =
|
||||
[ regex "(\x0111\x1ea7u ti\x00ean|th\x1ee9 nh\x1ea5t|th\x1ee9 1)"
|
||||
]
|
||||
, prod = \_ -> Just $ ordinal 1
|
||||
}
|
||||
|
||||
rules :: [Rule]
|
||||
rules =
|
||||
[ ruleOrdinals
|
||||
]
|
@ -16,6 +16,7 @@ module Duckling.Rules.VI
|
||||
import qualified Duckling.AmountOfMoney.VI.Rules as AmountOfMoney
|
||||
import Duckling.Dimensions.Types
|
||||
import qualified Duckling.Numeral.VI.Rules as Numeral
|
||||
import qualified Duckling.Ordinal.VI.Rules as Ordinal
|
||||
import Duckling.Types
|
||||
|
||||
rules :: Some Dimension -> [Rule]
|
||||
@ -24,7 +25,7 @@ rules (This Duration) = []
|
||||
rules (This Numeral) = Numeral.rules
|
||||
rules (This Email) = []
|
||||
rules (This AmountOfMoney) = AmountOfMoney.rules
|
||||
rules (This Ordinal) = []
|
||||
rules (This Ordinal) = Ordinal.rules
|
||||
rules (This PhoneNumber) = []
|
||||
rules (This Quantity) = []
|
||||
rules (This RegexMatch) = []
|
||||
|
@ -321,6 +321,8 @@ library
|
||||
, Duckling.Ordinal.TR.Rules
|
||||
, Duckling.Ordinal.UK.Corpus
|
||||
, Duckling.Ordinal.UK.Rules
|
||||
, Duckling.Ordinal.VI.Corpus
|
||||
, Duckling.Ordinal.VI.Rules
|
||||
, Duckling.Ordinal.ZH.Corpus
|
||||
, Duckling.Ordinal.ZH.Rules
|
||||
, Duckling.Ordinal.Helpers
|
||||
@ -607,6 +609,7 @@ test-suite duckling-test
|
||||
, Duckling.Ordinal.SV.Tests
|
||||
, Duckling.Ordinal.TR.Tests
|
||||
, Duckling.Ordinal.UK.Tests
|
||||
, Duckling.Ordinal.VI.Tests
|
||||
, Duckling.Ordinal.ZH.Tests
|
||||
, Duckling.Ordinal.Tests
|
||||
|
||||
|
@ -34,6 +34,7 @@ import qualified Duckling.Ordinal.RU.Tests as RU
|
||||
import qualified Duckling.Ordinal.SV.Tests as SV
|
||||
import qualified Duckling.Ordinal.TR.Tests as TR
|
||||
import qualified Duckling.Ordinal.UK.Tests as UK
|
||||
import qualified Duckling.Ordinal.VI.Tests as VI
|
||||
import qualified Duckling.Ordinal.ZH.Tests as ZH
|
||||
|
||||
tests :: TestTree
|
||||
@ -60,5 +61,6 @@ tests = testGroup "Ordinal Tests"
|
||||
, SV.tests
|
||||
, TR.tests
|
||||
, UK.tests
|
||||
, VI.tests
|
||||
, ZH.tests
|
||||
]
|
||||
|
22
tests/Duckling/Ordinal/VI/Tests.hs
Normal file
22
tests/Duckling/Ordinal/VI/Tests.hs
Normal file
@ -0,0 +1,22 @@
|
||||
-- Copyright (c) 2016-present, Facebook, Inc.
|
||||
-- All rights reserved.
|
||||
--
|
||||
-- This source code is licensed under the BSD-style license found in the
|
||||
-- LICENSE file in the root directory of this source tree. An additional grant
|
||||
-- of patent rights can be found in the PATENTS file in the same directory.
|
||||
|
||||
module Duckling.Ordinal.VI.Tests
|
||||
( tests ) where
|
||||
|
||||
import Data.String
|
||||
import Prelude
|
||||
import Test.Tasty
|
||||
|
||||
import Duckling.Dimensions.Types
|
||||
import Duckling.Ordinal.VI.Corpus
|
||||
import Duckling.Testing.Asserts
|
||||
|
||||
tests :: TestTree
|
||||
tests = testGroup "VI Tests"
|
||||
[ makeCorpusTest [This Ordinal] corpus
|
||||
]
|
Loading…
Reference in New Issue
Block a user