参考模型

class RecipeReference(name=None, version=None, user=None, channel=None, revision=None, timestamp=None)

配方的精确引用(不包含版本范围或别名),表示形式为 name/version[@user/channel][#revision][%timestamp]。应该足以在缓存或服务器中找到配方,并且验证将在特定点(导出、api 等)外部进行。

应将属性视为不可变,用户不应修改它们。

name: str

引用的名称

version: Version

引用的版本

user

引用的用户(如果有)

channel

引用的通道(如果有)

revision

引用的修订版(如果有)

timestamp

引用的时间戳(如果有)

static loads(rref)

从字符串实例化对象,格式为:name/version[@user/channel][#revision][%timestamp]

validate_ref(allow_uppercase=False)

检查引用是否有效,如果无效则引发 ConanException

matches(pattern, is_consumer)

将引用与提供的模式进行 fnmatches 匹配。

参数:
  • pattern (str) – 要匹配的模式,可以包含通配符,并且可以以 !~ 开头以否定匹配。特殊值 & 仅当 is_consumerTrue 时才会返回匹配。

  • is_consumer (bool) – 如果 True,则模式 & 将匹配此引用。