मैं PackageDescr का उपयोग करके अपने नियम में ऐसा कुछ कैसे उत्पन्न कर सकता हूं?

$var: Number (doubleValue > 100 ) from myPredefinedFunction()

मैंने निम्नलिखित की कोशिश की:

PatternDescr pt = new PatternDescr("Number","$var");
RelationalExprDescr ex = new RelationalExprDescr(">", false, null, new ExprConstraintDescr("myPredefinedFunction()"), new ExprConstraintDescr("100"));
pt.addConstraint(ex);

लेकिन मुझे यही मिलता है:

 $var : Number( myPredefinedFunction() > 100 )  
0
bjalexmdd 29 पद 2020, 18:35

1 उत्तर

सबसे बढ़िया उत्तर

आप myPredefinedFuntion() को एक बाधा के रूप में सेट करने का प्रयास कर रहे हैं। बाधाएं कोष्ठक के बीच डोलोल घोषणा का हिस्सा हैं, उदाहरण के लिए। MyObject( foo == "bar" ) ... foo == "bar" एक बाधा है।

इसके बजाय आपको setSource विधि। यह घोषणा का 'प्रेषक' भाग है। यह विधि एक PatternSourceDescr उपवर्ग -- संभवतः एक FromDescr

(वैकल्पिक रूप से, आपको setSource के बजाय setResource की आवश्यकता हो सकती है। केवल-आंतरिक एपीआई का उपयोग करने में समस्या यह है कि वे दस्तावेज नहीं हैं और बिना सूचना के परिवर्तन के अधीन हैं। मैं दृढ़ता से इस मार्ग से नीचे नहीं जाने का सुझाव देता हूं। )

1
Roddy of the Frozen Peas 31 पद 2020, 19:26