assignable value Author: DQinYuan
| 10 | * Author: DQinYuan |
| 11 | */ |
| 12 | public interface LeftValue extends Value { |
| 13 | |
| 14 | Class<?> getDefinedType(); |
| 15 | |
| 16 | default void set(Object newValue, ErrorReporter errorReporter) { |
| 17 | Class<?> defineType = getDefinedType(); |
| 18 | ObjTypeConvertor.QConverted result = ObjTypeConvertor.cast(newValue, defineType); |
| 19 | if (!result.isConvertible()) { |
| 20 | throw errorReporter.reportFormat(QLErrorCodes.INCOMPATIBLE_ASSIGNMENT_TYPE.name(), |
| 21 | QLErrorCodes.INCOMPATIBLE_ASSIGNMENT_TYPE.getErrorMsg(), |
| 22 | newValue == null ? "null" : newValue.getClass().getName(), |
| 23 | defineType.getName()); |
| 24 | } |
| 25 | setInner(result.getConverted()); |
| 26 | } |
| 27 | |
| 28 | void setInner(Object newValue); |
| 29 | |
| 30 | /** |
| 31 | * @return Nullable |
| 32 | */ |
| 33 | String getSymbolName(); |
| 34 | } |
no outgoing calls
no test coverage detected
searching dependent graphs…