我正在寻找一种在不需要实际数据时简化功能模式的方法:
data X = A | B String | C Int Int String
myfn :: X -> Int
myfn A = 50
myfn (B _) = 200
myfn (C _ _ _) = 500
Run Code Online (Sandbox Code Playgroud)
有没有办法为匹配C制作一个更简单的模式,只是丢弃这些值?
hsdev添加了一个提示"提示:使用记录模式",但谷歌并没有帮助我.
GO中的标准包中是否有任何功能可以验证URL?
我在初始搜索时没有找到任何内容,我宁愿不采用正则表达式检查.
我想在我的库中提供一个可以"扩展"的方法的基础结构.
此基础结构的方法依赖于扩展结构中的方法.这在Go中是不可能的,因为struct方法只能访问结构自己的字段,而不能访问父结构.
关键是要具有我不必在每个扩展类中重复的功能.
我已经提出了这种模式,它运行良好,但由于它的循环结构看起来很复杂.
我从来没有在其他Go代码中找到类似的东西.这是非常不合适的吗?我可以采取哪种不同的方法?
type MyInterface interface {
SomeMethod(string)
OtherMethod(string)
}
type Base struct{
B MyInterface
}
func (b *Base) SomeMethod(x string) {
b.B.OtherMethod(x)
}
type Extender struct {
Base
}
func (b *Extender) OtherMethod(x string) {
// Do something...
}
func NewExtender() *Extender {
e := Extender{}
e.Base.B = &e
return &e
}
Run Code Online (Sandbox Code Playgroud) 我必须为公寓楼开发交互式平面图导航仪和观察器,这将成为其基于Flash的前身.
我现在正在评估最适合在HTML5中实现此功能的技术和技术.我将不得不支持所有常见的浏览器(从7开始的IE).
要求:
您可以在此处查看基于Flash的版本的版本:http://salitergasse.at/sg9/eigentumswohnungen/moedling/perchtoldsdorf
我一直在考虑实现这个的选项.我还需要一种快速的方法来选择楼层的多边形(概述)和公寓(平面图),以便非开发商创建新的建筑物.
我提出的选项:
跨浏览器兼容性的最佳选择是什么?
我有一个添加新内容类型的模块.
对于此内容类型,我想提供node_contenttype.tpl.php节点类型模板,但Drupal不会在模块目录中识别此模板,仅在主题中.
如何让Drupal(6)使用我的模板?
我正在尝试使用Beam Haskell库的教程:https://tathougies.github.io/beam/tutorials/tutorial1/
module Lib
( someFunc
) where
{-# LANGUAGE
DeriveGeneric
, GADTs
, OverloadedStrings
, FlexibleContexts
, FlexibleInstances
, TypeFamilies
, TypeApplications
#-}
import Database.Beam
import Database.Beam.Postgres
import GHC.Generics
import Data.Text (Text)
data UserT f
= User
{ _userEmail :: Columnar f Text
, _userFirstName :: Columnar f Text
, _userLastName :: Columnar f Text
, _userPassword :: Columnar f Text }
deriving Generic
someFunc :: IO ()
someFunc = putStrLn "someFunc"
Run Code Online (Sandbox Code Playgroud)
这会导致以下错误:
• Can't make …Run Code Online (Sandbox Code Playgroud) 我在这里有这个简单的代码来定义类型并用于makeLenses生成镜头。
module Api.Jira.Types.Search
(
SearchRequest(..)
) where
import GHC.Generics
import qualified Data.Text as T
import Data.Aeson (FromJSON, ToJSON)
import Control.Lens
import Data.Aeson
import Data.Aeson.Types
data SearchRequest = SearchRequest
{ _jql :: T.Text
, _startAt :: Maybe Int
, _maxResults :: Maybe Int
, _fields :: Maybe [T.Text]
, _expand :: Maybe [T.Text]
, _properties :: Maybe [T.Text]
} deriving (Show, Generic)
instance ToJSON SearchRequest where
toJSON = genericToJSON defaultOptions {
fieldLabelModifier = drop 1 }
instance FromJSON SearchRequest …Run Code Online (Sandbox Code Playgroud) haskell ×3
go ×2
canvas ×1
drupal ×1
drupal-6 ×1
generics ×1
html ×1
idiomatic ×1
inheritance ×1
interactive ×1
record ×1
validation ×1