小编W55*_*4xv的帖子

在clojure中加载配置文件作为数据结构

clojure中是否有读取函数来解析clojure数据结构?我的用例是读取配置属性文件,属性的一个值应该是一个列表.我希望能够写成:

file.properties:

property1 = ["value1" "value2"]
Run Code Online (Sandbox Code Playgroud)

并在clojure:

(load-props "file.properties")
Run Code Online (Sandbox Code Playgroud)

并获取值为{property1,["value1""value2"]的地图

现在,我正在使用相同的输入文件"file.properties"执行以下操作:

(defn load-props [filename]
    (let [io (java.io.FileInputStream. filename)
        prop (java.util.Properties.)]
    (.load prop io)
    (into {} prop)))

;; returns:
;; {"property1" "[\"valu1\", \"valu2\"]"}
(load-props "file.properties")
Run Code Online (Sandbox Code Playgroud)

但我无法找到将结果解析为clojure向量的方法.我基本上在寻找像Erlang的文件:consult/1函数.知道怎么做吗?

configuration properties clojure

33
推荐指数
3
解决办法
1万
查看次数

合并来自不同存储库的Mercurial分支

我试图弄清楚如何将分支从单独的仓库合并到当前.

我有以下内容:

PJT1 - 包含分支默认和foodog

PJT2 - 包含分支默认值

来自PJT2,我做了以下几点:

$ hg fetch -y ../PJT1 -r foodog -m "this is a test"
Run Code Online (Sandbox Code Playgroud)

现在,如果我查看PJT2,我会看到正确的文件和更改.但是,如果我这样做hg branches,我会得到以下内容:

[someone@myhome pjt2]$ hg branches
foodog                         1:c1e14fde816b
default                        0:7b1adb938f71 (inactive)
Run Code Online (Sandbox Code Playgroud)

hg branch揭示以下内容:

[someone@myhome pjt2]$ hg branch
foodog
Run Code Online (Sandbox Code Playgroud)

如何从PJT1的foodog分支机构获取PJT2 分支的内容default

mercurial branching-and-merging

30
推荐指数
1
解决办法
4万
查看次数

动态基类和工厂

我有以下代码:

class EntityBase (object) :
    __entity__ = None

    def __init__ (self) :
        pass

def entity (name) :
    class Entity (EntityBase) :
        __entity__ = name

        def __init__ (self) :
            pass

    return Entity

class Smth (entity ("SMTH")) :
    def __init__ (self, a, b) :
        self.a = a
        self.b = b

# added after few comments -->
def factory (tag) :
    for entity in EntityBase.__subclasses__ () :
        if entity.__entity__ == tag :
            return entity.__subclasses__ ()[0]

    raise FactoryError (tag, "Unknown entity")

s = factory …
Run Code Online (Sandbox Code Playgroud)

python factory factory-pattern

2
推荐指数
2
解决办法
3958
查看次数