1
0
Переглянути джерело

New methods Number>>sqrt and #squared (issue #80)

Nicolas Petton 13 роки тому
батько
коміт
7ccaeab103
3 змінених файлів з 62 додано та 0 видалено
  1. 22 0
      js/Kernel.deploy.js
  2. 32 0
      js/Kernel.js
  3. 8 0
      st/Kernel.st

+ 22 - 0
js/Kernel.deploy.js

@@ -1889,6 +1889,28 @@ return self;}
 }),
 }),
 smalltalk.Number);
 smalltalk.Number);
 
 
+smalltalk.addMethod(
+'_sqrt',
+smalltalk.method({
+selector: 'sqrt',
+fn: function (){
+var self=this;
+return Math.sqrt(self);
+return self;}
+}),
+smalltalk.Number);
+
+smalltalk.addMethod(
+'_squared',
+smalltalk.method({
+selector: 'squared',
+fn: function (){
+var self=this;
+return self * self;
+return self;}
+}),
+smalltalk.Number);
+
 
 
 smalltalk.addMethod(
 smalltalk.addMethod(
 '_pi',
 '_pi',

+ 32 - 0
js/Kernel.js

@@ -2690,6 +2690,38 @@ referencedClasses: []
 }),
 }),
 smalltalk.Number);
 smalltalk.Number);
 
 
+smalltalk.addMethod(
+unescape('_sqrt'),
+smalltalk.method({
+selector: unescape('sqrt'),
+category: 'arithmetic',
+fn: function (){
+var self=this;
+return Math.sqrt(self);
+return self;},
+args: [],
+source: unescape('sqrt%0A%09%3Creturn%20Math.sqrt%28self%29%3E'),
+messageSends: [],
+referencedClasses: []
+}),
+smalltalk.Number);
+
+smalltalk.addMethod(
+unescape('_squared'),
+smalltalk.method({
+selector: unescape('squared'),
+category: 'arithmetic',
+fn: function (){
+var self=this;
+return self * self;
+return self;},
+args: [],
+source: unescape('squared%0A%09%5Eself%20*%20self'),
+messageSends: [unescape("*")],
+referencedClasses: []
+}),
+smalltalk.Number);
+
 
 
 smalltalk.addMethod(
 smalltalk.addMethod(
 unescape('_pi'),
 unescape('_pi'),

+ 8 - 0
st/Kernel.st

@@ -762,6 +762,14 @@ negated
 
 
 \\ aNumber
 \\ aNumber
 	<return self % aNumber>
 	<return self % aNumber>
+!
+
+sqrt
+	<return Math.sqrt(self)>
+!
+
+squared
+	^self * self
 ! !
 ! !
 
 
 !Number methodsFor: 'comparing'!
 !Number methodsFor: 'comparing'!