1(globalThis.webpackChunkdocs=globalThis.webpackChunkdocs||[]).push([[840],{5048(e,t,s){"use strict";s.d(t,{A:()=>r});s(96540);var n=s(74848);function r(e){return(0,n.jsx)("svg",{viewBox:"0 0 24 24",...e,children:(0,n.jsx)("path",{fill:"currentColor",d:"M4 19h6v-2H4v2zM20 5H4v2h16V5zm-3 6H4v2h13.25c1.1 0 2 .9 2 2s-.9 2-2 2H15v-2l-3 3l3 3v-2h2c2.21 0 4-1.79 4-4s-1.79-4-4-4z"})})}},14115(e,t,s){"use strict";s.d(t,{A:()=>r});s(96540);var n=s(74848);function r(e){return(0,n.jsx)("svg",{viewBox:"0 0 24 24",...e,children:(0,n.jsx)("path",{fill:"currentColor",d:"M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"})})}},17956(e,t,s){"use strict";s.r(t),s.d(t,{assets:()=>l,contentTitle:()=>i,default:()=>m,frontMatter:()=>o,metadata:()=>n,toc:()=>u});const n=JSON.parse('{"id":"reference/api/expectations/set_based_column_map_expectation/SetColumnMapMetricProvider_class","title":"SetColumnMapMetricProvider","description":"class greatexpectations.expectations.setbasedcolumnmap_expectation.SetColumnMapMetricProvider#","source":"@site/versioned_docs/version-0.18/reference/api/expectations/set_based_column_map_expectation/SetColumnMapMetricProvider_class.mdx","sourceDirName":"reference/api/expectations/set_based_column_map_expectation","slug":"/reference/api/expectations/set_based_column_map_expectation/SetColumnMapMetricProvider_class","permalink":"/docs/0.18/reference/api/expectations/set_based_column_map_expectation/SetColumnMapMetricProvider_class","draft":false,"unlisted":false,"tags":[],"version":"0.18","frontMatter":{"title":"SetColumnMapMetricProvider","sidebar_label":"SetColumnMapMetricProvider"},"sidebar":"gx_apis","previous":{"title":"SetBasedColumnMapExpectation","permalink":"/docs/0.18/reference/api/expectations/set_based_column_map_expectation/SetBasedColumnMapExpectation_class"},"next":{"title":"FabricPowerBIDatasource","permalink":"/docs/0.18/reference/api/experimental/datasource/FabricPowerBIDatasource_class"}}');var r=s(74848),a=s(28453),c=s(66190);const o={title:"SetColumnMapMetricProvider",sidebar_label:"SetColumnMapMetricProvider"},i=void 0,l={},u=[];function d(e){return(0,r.jsx)("section",{class:"sphinx-api-doc",id:"setcolumnmapmetricprovider",children:(0,r.jsxs)("dl",{class:"py class",children:[(0,r.jsxs)("dt",{class:"sig sig-object py",id:"great_expectations.expectations.set_based_column_map_expectation.SetColumnMapMetricProvider",children:[(0,r.jsxs)("em",{class:"property",children:[(0,r.jsx)("span",{class:"pre",children:"class"}),(0,r.jsx)("span",{class:"w",children:" "})]}),(0,r.jsx)("span",{class:"sig-prename descclassname",children:(0,r.jsx)("span",{class:"pre",children:"great_expectations.expectations.set_based_column_map_expectation."})}),(0,r.jsx)("span",{class:"sig-name descname",children:(0,r.jsx)("span",{class:"pre",children:"SetColumnMapMetricProvider"})}),(0,r.jsx)("a",{class:"headerlink",href:"#great_expectations.expectations.set_based_column_map_expectation.SetColumnMapMetricProvider",title:"Permalink to this definition",children:"#"})]}),(0,r.jsxs)("dd",{children:[(0,r.jsx)("p",{children:"Base class for all SetColumnMapMetrics."}),(0,r.jsxs)("p",{children:["SetColumnMapMetric classes inheriting from SetColumnMapMetricProvider are ephemeral,\ndefined by their ",(0,r.jsx)("cite",{children:"set"})," attribute, and registered during the execution of their associated SetColumnMapExpectation."]}),(0,r.jsx)("p",{children:"Metric Registration Example:"}),(0,r.jsx)("p",{children:(0,r.jsx)(c.A,{language:"python",children:"map_metric = SetBasedColumnMapExpectation.register_metric(\n set_camel_name='SolfegeScale',\n set_=['do', 're', 'mi', 'fa', 'so', 'la', 'ti'],\n)"})}),(0,r.jsx)("p",{children:"In some cases, subclasses of MetricProvider, such as SetColumnMapMetricProvider, will already\nhave correct values that may simply be inherited by Metric classes."}),(0,r.jsxs)("dl",{class:"field-list simple",children:[(0,r.jsx)("dt",{class:"field-odd",children:"Parameters"}),(0,r.jsx)("dd",{class:"field-odd",children:(0,r.jsxs)("ul",{class:"simple",children:[(0,r.jsx)("li",{children:(0,r.jsxs)("p",{children:[(0,r.jsx)("strong",{children:"set"})," (",(0,r.jsx)("em",{children:"union"}),(0,r.jsx)("em",{children:"["}),(0,r.jsx)("em",{children:"list"}),(0,r.jsx)("em",{children:", "}),(0,r.jsx)("em",{children:"set"}),(0,r.jsx)("em",{children:"]"}),") \u2013 A value set."]})}),(0,r.jsx)("li",{children:(0,r.jsxs)("p",{children:[(0,r.jsx)("strong",{children:"metric_name"})," (",(0,r.jsx)("em",{children:"str"}),") \u2013 The name of the registered metric. Must be globally unique in a great_expectations installation.\nConstructed by the ",(0,r.jsx)("cite",{children:"register_metric(\u2026)"})," function during Expectation execution."]})}),(0,r.jsx)("li",{children:(0,r.jsxs)("p",{children:[(0,r.jsx)("strong",{children:"domain_keys"})," (",(0,r.jsx)("em",{children:"tuple"}),") \u2013 A tuple of the keys used to determine the domain of the metric."]})}),(0,r.jsx)("li",{children:(0,r.jsxs)("p",{children:[(0,r.jsx)("strong",{children:"condition_value_keys"})," (",(0,r.jsx)("em",{children:"tuple"}),") \u2013 A tuple of the keys used to determine the value of the metric."]})})]})})]})]})]})})}function m(e={}){const{wrapper:t}={...(0,a.R)(),...e.components};return t?(0,r.jsx)(t,{...e,children:(0,r.jsx)(d,{...e})}):d()}},18426(e,t){function s(e){let t,s=[];for(let n of e.split(",").map(e=>e.trim()))if(/^-?\d+$/.test(n))s.push(parseInt(n,10));else if(t=n.match(/^(-?\d+)(-|\.\.\.?|\u2025|\u2026|\u22EF)(-?\d+)$/)){let[e,n,r,a]=t;if(n&&a){n=parseInt(n),a=parseInt(a);const e=n<a?1:-1;"-"!==r&&".."!==r&&"\u2025"!==r||(a+=e);for(let t=n;t!==a;t+=e)s.push(t)}}return s}t.default=s,e.exports=s},26058(e,t,s){"use strict";s.d(t,{A:()=>a});var n=s(95293),r=s(6342);function a(){const{prism:e}=(0,r.p)(),{colorMode:t}=(0,n.G)(),s=e.theme,a=e.darkTheme||s;return"dark"===t?a:s}},28453(e,t,s){"use strict";s.d(t,{R:()=>c,x:()=>o});var n=s(96540);const r={},a=n.createContext(r);function c(e){const t=n.useContext(a);return n.useMemo(function(){return"function"==typeof e?e(t):{...t,...e}},[t,e])}function o(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:c(e.components),n.createElement(a.Provider,{value:t},e.children)}},34291(e,t,s){"use strict";s.d(t,{M$:()=>j,Ph:()=>C,l8:()=>_,mU:()=>b});var n=s(96540),r=s(15066),a=s(18426),c=s.n(a),o=s(89532),i=s(74848);const l=/title=(?<quote>["'])(?<title>.*?)\1/,u=/\{(?<range>[\d,-]+)\}/,d={js:{start:"\\/\\/",end:""},jsBlock:{start:"\\/\\*",end:"\\*\\/"},jsx:{start:"\\{\\s*\\/\\*",end:"\\*\\/\\s*\\}"},bash:{start:"#",end:""},html:{start:"\x3c!--",end:"--\x3e"}},m={...d,lua:{start:"--",end:""},wasm:{start:"\\;\\;",end:""},tex:{start:"%",end:""},vb:{start:"['\u2018\u2019]",end:""},vbnet:{start:"(?:_\\s*)?['\u2018\u2019]",end:""},rem:{start:"[Rr][Ee][Mm]\\b",end:""},f90:{start:"!",end:""},ml:{start:"\\(\\*",end:"\\*\\)"},cobol:{start:"\\*>",end:""}},p=Object.keys(d);function h(e,t){const s=e.map(e=>{const{start:s,end:n}=m[e];return`(?:${s}\\s*(${t.flatMap(e=>
1[e.line,e.block?.start,e.block?.end].filter(Boolean)).join("|")})\\s*${n})`}).join("|");return new RegExp(`^\\s*(?:${s})\\s*$`)}function f({showLineNumbers:e,metastring:t}){return"boolean"==typeof e?e?1:void 0:"number"==typeof e?e:function(e){const t=e?.split(" ").find(e=>e.startsWith("showLineNumbers"));if(t){if(t.startsWith("showLineNumbers=")){const e=t.replace("showLineNumbers=","");return parseInt(e,10)}return 1}}(t)}function x(e,t){const{language:s,magicComments:n}=t;if(void 0===s)return{lineClassNames:{},code:e};const r=function(e,t){switch(e){case"js":case"javascript":case"ts":case"typescript":return h(["js","jsBlock"],t);case"jsx":case"tsx":return h(["js","jsBlock","jsx"],t);case"html":return h(["js","jsBlock","html"],t);case"python":case"py":case"bash":return h(["bash"],t);case"markdown":case"md":return h(["html","jsx","bash"],t);case"tex":case"latex":case"matlab":return h(["tex"],t);case"lua":case"haskell":return h(["lua"],t);case"sql":return h(["lua","jsBlock"],t);case"wasm":return h(["wasm"],t);case"vb":case"vba":case"visual-basic":return h(["vb","rem"],t);case"vbnet":return h(["vbnet","rem"],t);case"batch":return h(["rem"],t);case"basic":return h(["rem","f90"],t);case"fsharp":return h(["js","ml"],t);case"ocaml":case"sml":return h(["ml"],t);case"fortran":return h(["f90"],t);case"cobol":return h(["cobol"],t);default:return h(p,t)}}(s,n),a=e.split(/\r?\n/),o=Object.fromEntries(n.map(e=>[e.className,{start:0,range:""}])),i=Object.fromEntries(n.filter(e=>e.line).map(({className:e,line:t})=>[t,e])),l=Object.fromEntries(n.filter(e=>e.block).map(({className:e,block:t})=>[t.start,e])),u=Object.fromEntries(n.filter(e=>e.block).map(({className:e,block:t})=>[t.end,e]));for(let c=0;c<a.length;){const e=a[c].match(r);if(!e){c+=1;continue}const t=e.slice(1).find(e=>void 0!==e);i[t]?o[i[t]].range+=`${c},`:l[t]?o[l[t]].start=c:u[t]&&(o[u[t]].range+=`${o[u[t]].start}-${c-1},`),a.splice(c,1)}const d={};return Object.entries(o).forEach(([e,{range:t}])=>{c()(t).forEach(t=>{d[t]??=[],d[t].push(e)})}),{code:a.join("\n"),lineClassNames:d}}function g(e,t){const s=e.replace(/\r?\n$/,"");return function(e,{metastring:t,magicComments:s}){if(t&&u.test(t)){const n=t.match(u).groups.range;if(0===s.length)throw new Error(`A highlight range has been given in code block's metastring (\`\`\` ${t}), but no magic comment config is available. Docusaurus applies the first magic comment entry's className for metastring ranges.`);const r=s[0].className,a=c()(n).filter(e=>e>0).map(e=>[e-1,[r]]);return{lineClassNames:Object.fromEntries(a),code:e}}return null}(s,{...t})??x(s,{...t})}function b(e){const t=function(e){return t=e.language??function(e){if(!e)return;const t=e.split(" ").find(e=>e.startsWith("language-"));return t?.replace(/language-/,"")}(e.className)??e.defaultLanguage,t?.toLowerCase()??"text";var t}({language:e.language,defaultLanguage:e.defaultLanguage,className:e.className}),{lineClassNames:s,code:n}=g(e.code,{metastring:e.metastring,magicComments:e.magicComments,language:t}),a=function({className:e,language:t}){return(0,r.A)(e,t&&!e?.includes(`language-${t}`)&&`language-${t}`)}({className:e.className,language:t}),c=(o=e.metastring,(o?.match(l)?.groups.title??"")||e.title);var o;const i=f({showLineNumbers:e.showLineNumbers,metastring:e.metastring});return{codeInput:e.code,code:n,className:a,language:t,title:c,lineNumbersStart:i,lineClassNames:s}}function j(e){const t={color:"--prism-color",backgroundColor:"--prism-background-color"},s={};return Object.entries(e.plain).forEach(([e,n])=>{const r=t[e];r&&"string"==typeof n&&(s[r]=n)}),s}const v=(0,n.createContext)(null);function _({metadata:e,wordWrap:t,children:s}){const r=(0,n.useMemo)(()=>({metadata:e,wordWrap:t}),[e,t]);return(0,i.jsx)(v.Provider,{value:r,children:s})}function C(){const e=(0,n.useContext)(v);if(null===e)throw new o.dV("CodeBlockContextProvider");return e}},66190(e,t,s){"use strict";s.d(t,{A:()=>U});var n=s(96540),r=s(92303),a=s(20053),c=s(26058),o=s(17559),i=s(34291);const l="codeBlockContainer_APcc";var u=s(74848);function d({as:e,...t}){const s=(0,c.A)(),n=(0,i.M$)(s);return(0,u.jsx)(e,{...t,style:n,className:(0,a.A)(t.className,l,o.G.common.codeBlock)})}const m="codeBlock_qGQc",p="codeBlockStandalone_zC50",h="codeBlockLines_p187",f="codeBlockLinesWithNumbering_OFgW";function x({children:e,className:t}){return(0,u.jsx)(d,{as:"pre",tabIndex:0,className:(0,a.A)(p,"thin-scrollbar",t),children:(0,u.jsx)("code",{className:h,children:e})})}var g=s(6342),b=s(96591);function j({children:e}){return e}var v=s(78181);function _({line:e,token:t,...s}){return(0,u.jsx)("span",{...s})}const C="codeLine_iPqp",N="codeLineNumber_F4P7",k="codeLineContent_pOih";function y({line:e,classNames:t,showLineNumbers:s,getLineProps:n,getTokenProps:r}){if(t?.includes("code-block-hide-line"))return null;const c=function(e){const t=1===e.length&&"\n"===e[0].content?e[0]:void 0;return t?[{...t,content:""}]:e}(e),o=n({line:c,className:(0,a.A)(t,s&&C)}),i=c.map((e,t)=>{const s=r({token:e});return(0,u.jsx)(_,{...s,line:c,token:e,children:s.children},t)});return(0,u.jsxs)("span",{...o,children:[s?(0,u.jsxs)(u.Fragment,{children:[(0,u.jsx)("span",{className:N}),(0,u.jsx)("span",{className:k,children:i})]}):i,(0,u.jsx)("br",{})]})}const w=n.forwardRef((e,t)=>
1(0,u.jsx)("pre",{ref:t,tabIndex:0,...e,className:(0,a.A)(e.className,m,"thin-scrollbar")}));function M(e){const{metadata:t}=(0,i.Ph)();return(0,u.jsx)("code",{...e,className:(0,a.A)(e.className,h,void 0!==t.lineNumbersStart&&f),style:{...e.style,counterReset:void 0===t.lineNumbersStart?void 0:"line-count "+(t.lineNumbersStart-1)}})}function A({className:e}){const{metadata:t,wordWrap:s}=(0,i.Ph)(),n=(0,c.A)(),{code:r,language:o,lineNumbersStart:l,lineClassNames:d}=t;return(0,u.jsx)(v.f4,{theme:n,code:r,language:o,children:({className:t,style:n,tokens:r,getLineProps:c,getTokenProps:o})=>(0,u.jsx)(w,{ref:s.codeBlockRef,className:(0,a.A)(e,t),style:n,children:(0,u.jsx)(M,{children:r.map((e,t)=>(0,u.jsx)(y,{line:e,getLineProps:c,getTokenProps:o,classNames:d[t],showLineNumbers:void 0!==l},t))})})})}var B=s(78478),S=s(21312);function P({className:e,...t}){return(0,u.jsx)("button",{type:"button",...t,className:(0,a.A)("clean-btn",e)})}var E=s(81473),L=s(14115);const T={copyButtonCopied:"copyButtonCopied_KAEU",copyButtonIcons:"copyButtonIcons_CCmD",copyButtonIcon:"copyButtonIcon_cWY_",copyButtonSuccessIcon:"copyButtonSuccessIcon_YaqN"};function I(e){return e?(0,S.T)({id:"theme.CodeBlock.copied",message:"Copied",description:"The copied button label on code blocks"}):(0,S.T)({id:"theme.CodeBlock.copyButtonAriaLabel",message:"Copy code to clipboard",description:"The ARIA label for copy code blocks button"})}function W({className:e}){const{copyCode:t,isCopied:s}=function(){const{metadata:{code:e}}=(0,i.Ph)(),[t,s]=(0,n.useState)(!1),r=(0,n.useRef)(void 0),a=(0,n.useCallback)(t=>{const n=t?.currentTarget,a=function(e,t){if(!t)return e;const s=t.closest('[class*="codeBlockContent"]');if(!s)return e;const n=s.querySelector("code");if(!n)return e;const r=n.cloneNode(!0);return r.querySelectorAll(".code-block-hide-line").forEach(e=>{const t=e.nextSibling;t&&"BR"===t.nodeName&&t.remove(),e.remove()}),r.querySelectorAll("br").forEach(e=>{e.replaceWith("\n")}),r.textContent||r.innerText||e}(e,n);navigator.clipboard.writeText(a).then(()=>{s(!0),r.current=window.setTimeout(()=>{s(!1)},1e3)})},[e]);return(0,n.useEffect)(()=>()=>window.clearTimeout(r.current),[]),{copyCode:a,isCopied:t}}();return(0,u.jsx)(P,{"aria-label":I(s),title:(0,S.T)({id:"theme.CodeBlock.copy",message:"Copy",description:"The copy button label on code blocks"}),className:(0,a.A)(e,T.copyButton,s&&T.copyButtonCopied),onClick:t,children:(0,u.jsxs)("span",{className:T.copyButtonIcons,"aria-hidden":"true",children:[(0,u.jsx)(E.A,{className:T.copyButtonIcon}),(0,u.jsx)(L.A,{className:T.copyButtonSuccessIcon})]})})}var $=s(5048);const R="wordWrapButtonIcon_zAao",q="wordWrapButtonEnabled_RxZc";function O({className:e}){const{wordWrap:t}=(0,i.Ph)();if(!(t.isEnabled||t.isCodeScrollable))return!1;const s=(0,S.T)({id:"theme.CodeBlock.wordWrapToggle",message:"Toggle word wrap",description:"The title attribute for toggle word wrapping button of code block lines"});return(0,u.jsx)(P,{onClick:()=>t.toggle(),className:(0,a.A)(e,t.isEnabled&&q),"aria-label":s,title:s,children:(0,u.jsx)($.A,{className:R,"aria-hidden":"true"})})}const H="buttonGroup_VWRw";function V({className:e}){return(0,u.jsx)(B.A,{children:()=>(0,u.jsxs)("div",{className:(0,a.A)(e,H),children:[(0,u.jsx)(O,{}),(0,u.jsx)(W,{})]})})}const z="codeBlockContent_bxn0",D="codeBlockTitle_d3dP";function F({className:e}){const{metadata:t}=(0,i.Ph)();return(0,u.jsxs)(d,{as:"div",className:(0,a.A)(e,t.className),children:[t.title&&(0,u.jsx)("div",{className:D,children:(0,u.jsx)(j,{children:t.title})}),(0,u.jsxs)("div",{className:z,children:[(0,u.jsx)(A,{}),(0,u.jsx)(V,{})]})]})}function G(e){const t=function(e){const{prism:t}=(0,g.p)();return(0,i.mU)({code:e.children,className:e.className,metastring:e.metastring,magicComments:t.magicComments,defaultLanguage:t.defaultLanguage,language:e.language,title:e.title,showLineNumbers:e.showLineNumbers})}(e),s=(0,b.f)();return(0,u.jsx)(i.l8,{metadata:t,wordWrap:s,children:(0,u.jsx)(F,{})})}function U({children:e,...t}){const s=(0,r.A)(),a=function(e){return n.Children.toArray(e).some(e=>(0,n.isValidElement)(e))?e:Array.isArray(e)?e.join(""):e}(e),c="string"==typeof a?G:x;return(0,u.jsx)(c,{...t,children:a},String(s))}},78478(e,t,s){"use strict";s.d(t,{A:()=>a});s(96540);var n=s(92303),r=s(74848);function a({children:e,fallback:t}){return(0,n.A)()?(0,r.jsx)(r.Fragment,{children:e?.()}):t??null}},81473(e,t,s){"use strict";s.d(t,{A:()=>r});s(96540);var n=s(74848);function r(e){return(0,n.jsx)("svg",{viewBox:"0 0 24 24",...e,children:(0,n.jsx)("path",{fill:"currentColor",d:"M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"})})}},96591(e,t,s){"use strict";s.d(t,{f:()=>o});var n=s(96540),r=s(89532);const a={attributes:!0,characterData:!0,childList:!0,subtree:!0};
1function c(e,t){const[s,c]=(0,n.useState)(),o=(0,n.useCallback)(()=>{c(e.current?.closest("[role=tabpanel][hidden]"))},[e,c]);(0,n.useEffect)(()=>{o()},[o]),function(e,t,s=a){const c=(0,r._q)(t),o=(0,r.Be)(s);(0,n.useEffect)(()=>{const t=new MutationObserver(c);return e&&t.observe(e,o),()=>t.disconnect()},[e,c,o])}(s,e=>{e.forEach(e=>{"attributes"===e.type&&"hidden"===e.attributeName&&(t(),o())})},{attributes:!0,characterData:!1,childList:!1,subtree:!1})}function o(){const[e,t]=(0,n.useState)(!1),[s,r]=(0,n.useState)(!1),a=(0,n.useRef)(null),o=(0,n.useCallback)(()=>{const s=a.current.querySelector("code");e?s.removeAttribute("style"):(s.style.whiteSpace="pre-wrap",s.style.overflowWrap="anywhere"),t(e=>!e)},[a,e]),i=(0,n.useCallback)(()=>{const{scrollWidth:e,clientWidth:t}=a.current,s=e>t||a.current.querySelector("code").hasAttribute("style");r(s)},[a]);return c(a,i),(0,n.useEffect)(()=>{i()},[e,i]),(0,n.useEffect)(()=>(window.addEventListener("resize",i,{passive:!0}),()=>{window.removeEventListener("resize",i)}),[i]),{codeBlockRef:a,isEnabled:e,isCodeScrollable:s,toggle:o}}}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.