From 9f4884ce68811e2ebde6e38b7bf702517af1a62b Mon Sep 17 00:00:00 2001 From: Jan Vrany Date: Wed, 12 Jun 2024 18:02:39 +0100 Subject: [PATCH] Add `#isAcAsmOperandModifier` This commit adds `#isAcAsmOperandModifier` in order to replace `#isKindOf:`. --- src/ArchC-Core/AcAsmOperandModifier.class.st | 5 +++++ src/ArchC-Core/AsmOperandInstantiation.class.st | 8 +++++--- src/ArchC-Core/Object.extension.st | 5 +++++ 3 files changed, 15 insertions(+), 3 deletions(-) diff --git a/src/ArchC-Core/AcAsmOperandModifier.class.st b/src/ArchC-Core/AcAsmOperandModifier.class.st index aebbbfd..7eaa8d3 100644 --- a/src/ArchC-Core/AcAsmOperandModifier.class.st +++ b/src/ArchC-Core/AcAsmOperandModifier.class.st @@ -82,6 +82,11 @@ AcAsmOperandModifier >> encodeInFields: fs accordingTo: format [ self subclassResponsibility ] +{ #category : #testing } +AcAsmOperandModifier >> isAcAsmOperandModifier [ + ^ true +] + { #category : #queries } AcAsmOperandModifier >> isPRREL [ ^ self class isPCREL diff --git a/src/ArchC-Core/AsmOperandInstantiation.class.st b/src/ArchC-Core/AsmOperandInstantiation.class.st index 97ed3fa..109a2aa 100644 --- a/src/ArchC-Core/AsmOperandInstantiation.class.st +++ b/src/ArchC-Core/AsmOperandInstantiation.class.st @@ -87,9 +87,11 @@ AsmOperandInstantiation >> encodeSimpleValue: value [ { #category : #private } AsmOperandInstantiation >> encodeValue: value accoringTo: format [ - (value isKindOf: AcAsmOperandModifier) ifTrue: [ ^value encodeInFields: self accordingTo: format ]. - ^self encodeSimpleValue: value - + value isAcAsmOperandModifier ifTrue: [ + ^ value encodeInFields: self accordingTo: format + ] ifFalse: [ + ^ self encodeSimpleValue: value + ] ] { #category : #rewriting } diff --git a/src/ArchC-Core/Object.extension.st b/src/ArchC-Core/Object.extension.st index c3ef449..bbcd62c 100644 --- a/src/ArchC-Core/Object.extension.st +++ b/src/ArchC-Core/Object.extension.st @@ -4,3 +4,8 @@ Extension { #name : #Object } Object >> decodeFor: anISA [ ^(anISA decodeableFormFor: self) decodeFor: anISA ] + +{ #category : #'*ArchC-Core' } +Object >> isAcAsmOperandModifier [ + ^ false +]