org.eclipse.xtext.xbase.XMemberFeatureCall.isNullSafe()方法的使用及代码示例

x33g5p2x  于2022-02-03 转载在 其他  
字(4.8k)|赞(0)|评价(0)|浏览(101)

本文整理了Java中org.eclipse.xtext.xbase.XMemberFeatureCall.isNullSafe()方法的一些代码示例,展示了XMemberFeatureCall.isNullSafe()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。XMemberFeatureCall.isNullSafe()方法的具体详情如下:
包路径:org.eclipse.xtext.xbase.XMemberFeatureCall
类名称:XMemberFeatureCall
方法名:isNullSafe

XMemberFeatureCall.isNullSafe介绍

[英]Returns the value of the 'Null Safe' attribute.

If the meaning of the 'Null Safe' attribute isn't clear, there really should be more of a description here...
[中]返回“Null-Safe”属性的值。
如果“Null-Safe”属性的含义不清楚,这里真的应该有更多的描述。。。

代码示例

代码示例来源:origin: org.eclipse.xtext/org.eclipse.xtext.xbase

  1. protected boolean isVariableDeclarationRequired(XMemberFeatureCall expr, @SuppressWarnings("unused") ITreeAppendable b) {
  2. return expr.isNullSafe();
  3. }

代码示例来源:origin: io.sarl.lang/io.sarl.lang

  1. /** Generate a feature call.
  2. *
  3. * @param expr the call expression.
  4. */
  5. public void generate(XAbstractFeatureCall expr) {
  6. if (expr.isTypeLiteral()) {
  7. final JvmType type = (JvmType) expr.getFeature();
  8. this.codeReceiver.append(type);
  9. //} else if (getExpressionHelper().isShortCircuitOperation(expr)) {
  10. // generateShortCircuitInvocation(expr);
  11. } else {
  12. if (expr instanceof XMemberFeatureCall && ((XMemberFeatureCall) expr).isNullSafe()) {
  13. featureCalltoJavaExpression(expr, () -> expr);
  14. } else {
  15. featureCalltoJavaExpression(expr, null);
  16. }
  17. }
  18. }

代码示例来源:origin: org.eclipse.xtext/org.eclipse.xtext.xbase

  1. protected boolean isPotentialTypeLiteralImpl(XExpression featureCall, /* @Nullable */ IResolvedTypes resolvedTypes, boolean staticNotation) {
  2. if (featureCall instanceof XMemberFeatureCall) {
  3. XMemberFeatureCall casted = (XMemberFeatureCall) featureCall;
  4. if (casted.isExplicitOperationCallOrBuilderSyntax() || casted.isNullSafe()) {
  5. return false;
  6. }
  7. XExpression target = casted.getMemberCallTarget();
  8. if (casted.isExplicitStatic() != staticNotation) {
  9. return false;
  10. }
  11. return isPotentialTypeLiteralImpl(target, resolvedTypes, staticNotation);
  12. }
  13. if (featureCall instanceof XFeatureCall) {
  14. XFeatureCall casted = (XFeatureCall) featureCall;
  15. if (casted.isExplicitOperationCallOrBuilderSyntax()) {
  16. return false;
  17. }
  18. if (resolvedTypes == null)
  19. return true;
  20. LightweightTypeReference knownType = resolvedTypes.getActualType(casted);
  21. if (knownType == null || knownType.isUnknown()) {
  22. return true;
  23. }
  24. }
  25. return false;
  26. }

代码示例来源:origin: org.eclipse.xtext/org.eclipse.xtext.xbase

  1. protected Object _doEvaluate(final XMemberFeatureCall featureCall, final IEvaluationContext context, final CancelIndicator indicator) {
  2. if (featureCall.isTypeLiteral()) {
  3. JvmType type = (JvmType) featureCall.getFeature();
  4. Object result = translateJvmTypeToResult(type, 0);
  5. return result;
  6. } else {
  7. XExpression receiver = getActualReceiver(featureCall); //, featureCall.getFeature(), featureCall.getImplicitReceiver());
  8. Object receiverObj = receiver==null?null:internalEvaluate(receiver, context, indicator);
  9. if (featureCall.isNullSafe() && receiverObj==null) {
  10. return getDefaultObjectValue(typeResolver.resolveTypes(featureCall).getActualType(featureCall));
  11. }
  12. return invokeFeature(featureCall.getFeature(), featureCall, receiverObj, context, indicator);
  13. }
  14. }

代码示例来源:origin: org.eclipse.xtext/org.eclipse.xtext.xbase

  1. @Check
  2. void checkNullSafeFeatureCallWithPrimitives(XMemberFeatureCall featureCall) {
  3. if (featureCall.isNullSafe()) {
  4. if (getActualType(featureCall.getMemberCallTarget()).isPrimitive()) {
  5. error("Cannot use null-safe feature call on primitive receiver", featureCall,
  6. Literals.XMEMBER_FEATURE_CALL__NULL_SAFE, NULL_SAFE_FEATURE_CALL_ON_PRIMITIVE);
  7. return;
  8. }
  9. LightweightTypeReference type = getActualType(featureCall);
  10. if (type.isPrimitive() && isValueExpectedRecursive(featureCall)) {
  11. addIssue("Null-safe call of primitive-valued feature " + featureCall.getConcreteSyntaxFeatureName()
  12. + ", default value "+ getDefaultValue(type) +" will be used",
  13. featureCall, NULL_SAFE_FEATURE_CALL_OF_PRIMITIVE_VALUED_FEATURE);
  14. }
  15. }
  16. }

代码示例来源:origin: org.eclipse.xtext/org.eclipse.xtext.xbase

  1. if (featureCall.isNullSafe())
  2. acceptor.accept(memberFeatureCallElements.getNullSafeQuestionMarkFullStopKeyword_1_1_0_0_1_1_0());
  3. else if (featureCall.isExplicitStatic())

代码示例来源:origin: org.eclipse.xtext/org.eclipse.xtext.xbase

  1. return !((XMemberFeatureCall) featureCall).isNullSafe();

代码示例来源:origin: org.eclipse.xtext/org.eclipse.xtext.xbase

  1. if (((XMemberFeatureCall) expr.eContainer()).isNullSafe()) {
  2. if (expr instanceof XFeatureCall) {
  3. JvmIdentifiableElement feature = ((XFeatureCall) expr).getFeature();

代码示例来源:origin: org.eclipse.xtext/org.eclipse.xtext.xbase

  1. if (expr instanceof XMemberFeatureCall && ((XMemberFeatureCall) expr).isNullSafe()) {
  2. compileNullSafeFeatureCall((XMemberFeatureCall) expr, b, isReferenced);
  3. } else {

代码示例来源:origin: org.eclipse.xtext/org.eclipse.xtext.xbase

  1. final XMemberFeatureCall it = ((XMemberFeatureCall)top);
  2. boolean _matched = false;
  3. boolean _isNullSafe = it.isNullSafe();
  4. if (_isNullSafe) {
  5. _matched=true;

代码示例来源:origin: org.eclipse.xtext/org.eclipse.xtext.xbase

  1. final XMemberFeatureCall it = call;
  2. boolean _matched = false;
  3. boolean _isNullSafe = it.isNullSafe();
  4. if (_isNullSafe) {
  5. _matched=true;

相关文章